Linux常用命令备忘
这是之前初学Linux时做下的常用命令笔记,根据现在的熟悉程度增删了一些,也是做上备份查看,希望能让有用的童鞋参考一二。
//将使用到的内容输出到屏幕,仅检查语法
sh -nx scripts.sh
//输出目前所有set设定值
echo $-
//列出最近n条命令
history -n
//默认写入~/.bash_history
history -raw histfiles
//忽略行中空白-空白行-大小写差异
//to-file可以用‘-’代替,为标准输入
diff -bBi from-file to-file
//列出所有位元不同点
cmp -l from-file to-file
//是否存在
test -e filename
//是否存在且为文件
test -f filename
//是否存在且为(首字母):directory, block device, character device, Socket, pipe, Link
//是否存在且具有权限:r,w,x,u,g,k(Sticky bit),s(非空)
//file1是否比file2新或旧
test file1 -nt/ot file2
//是否为同一文件,是否指向同一个iNode,用于判断hard link
test file1 -ef file2
//定义变量的类型为array,integer,envirnment,readonly
declare -aixr variable
//设置提示和等待的描述
read -p "This is hint" -t 30 variable
//不加参数,显示路径
//显示为file, alias, builtin
type -t name
//转换文本格式
iconv -f frommap -t tomap filename [-o newfile]
//间隔1秒,高亮显示过滤内容
watch -n 1 -d 'pstree | grep sys'
//查找特定进程
ps -ef | grep xxx
//观察系统所有进程
ps aux
//以树状展示
ps axjf
//统计目录下文件数(包含当前目录)
ls -l | wc -l
//从本地复制到服务器、-r递归目录
scp local_file remote_username@remote_ip:remote_folder/file
//显示仅使用TCP并处于监听状态的进程
ss -tpl
//显示Socket概况
ss -s
//显示使用TCP,处于监听状态的进程情况
netstat -apt
//显示网卡列表
netstat -i
//显示路由表的信息
netstat -r
//显示网络概况
netstat -s
//间隔2秒,TTL为255,ping 10次某网关
ping -c 10 -i 2 -t 255 -b 8.8.8.8
//列出用户为root,进程为mysql,使用TCP的文件信息
lsof -u root -c mysql -i tcp
//显示磁盘统计信息
vmstat -d
//显示内存统计信息等
vmstat -s
//停掉系统服务,重启;-h为关机;-c取消指令内容;
shutdown -r
//halt:停机,poweroff:关机,reboot:重启,suspend:休眠
systemctl reboot
//随机显示一个命令的man页
man $(ls /bin | shuf | head -1)
//以更易读的方式,显示文件系统inode的使用情况
df -hi
//以更易读的方式,显示多个文件的总和
du -sh text.txt text2.txt
//使test1.txt的时间戳和test2.txt的相同
touch -c test1.txt test2.txt
//强制,交互,若为则复制link file,文件属性
cp -pdfi from_file to_file
//使用ASCII,十进制,浮点数,八进制,十六进制输出文本
od [-cdfox] file_name
//读取最后10行的记录
tail -n 10 file_name
//输出除了最后10行的内容
head -n -10 file_name
//从第3行开始,每次输出2行
more +3 -2 file_name
//显示百分比,行号
less -mN file_name
//显示所有行号,合并空行,显示TAB
cat -nsT file_name
//A:存取文件(或目录)时,存取时间atime将不会被修改
//S:进行任何修改,会“同步”写入磁盘
//a:只能增加内容,不能删除和修改
//c:自动压缩
//d:不会被dump备份
//i:不能被删除,改名,设定link也不行
//s:删除后移出磁盘
//u:删除后保留在磁盘
chattr [+-=][ASacdistu] file_name
//寻找
whereis file_name
//忽略大小写,输出前5个
locate -il 5 file_name
//参数超级多:时间类型群组权限大小
//查找大文件
find . -type f -size +800M -print0 | xargs -0 du -mh | sort -nr
//查找大目录
du -hm --max-depth=2 | sort -nr | head -5
find -name t*.txt
//在PATH中寻找命令位置
which exc_name
//压缩:针对*.tar.gz
tar -zcvf file_name
//解压缩
tar -zxvf file_name
//查看包含内容
tar -ztvf file_name
//制作文件-备份
dd if="input_file" of="output_file" bs="block_size" count=“number”