一)grep
grep string :匹配含有string的行
grep -v string :匹配没有string的行
grep -c string file :统计file文件匹配的行数
grep -w string:完全匹配的行
*例:ls -l | grep ^ [ ^d ] :列出文件夹下所有非目录的文件信息
二)wc
wc -l :统计行数
wc -w :统计单词数
wc -m:统计字符数
*例:find ./ -name .c | wc -l :统计文件夹下.c文件的个数(为啥redhat中不能执行了?)
find ./ -name .c | Xargs wc -l :统计文件夹下.c文件的总行数
- wc -l 与grep 的不同之处:
当处理多个文件时,wc -l会列出总的统计数字;grep -c只列出每个文件的匹配数字
三)安装包相关
查看包是否安装:
1) rpm -q commandname
或者 rpm -qa | grep commandname
2) yum list | grep commandname
3) dpkg -l | grep commandname (ubuntu中)
查看包的依赖关系:
1) (进入放置rpm包的目录 cd /mnt/Package/)rpm -qpR packagename.rpm
四)查看操作的log
vi /var/log/message
(命令行中命令执行失败时可以参考)
五)用进程名称杀死进程
killall processname
(如果没有killall命令,yum install psmisc)
六)硬件信息相关
uname -p/-i/-m :显示硬件平台名称,判断32位/64位
uname -r :显示操作系统的发行编号
uname -v:显示系统内核发行的时间
七)获取系统时间的命令
1) date
2) echo $(date +%Y-%m-%d\ %H:%M:%S)
八)t权限:
设置目录的t权限后,只能删除此目录下自己创建的文件,不能删除别人创建的,起保护作用
设置:chmod 1777 dirname
或 chmod +t dirname
九) shell相关:
1) 预定义变量:
$@ :所有参数
$* :所有参数
$n :第n个参数
$# :所有参数的个数
$? :上一条命令的返回值
$$:当前进程的进程号
$! :最后一个后台运行的进程的进程号
2)
${#arr[*]}和${arr[@]}:获取数组长度
${arr[*]}和${arr[@]}: