管道命令
选取命令cat和grep
选取命令:就是将一段数据经过分析后,取出我们想要的部分,或者是,通过分析关键字,取得我们想要的行。选取信息通常是针对逐行分
析得到的,而不是针对整个信息分析的。
cat命令
实操
echo $PATH
echo $PATH | cut -d ':' -f5,7 将输出的内容以冒号为分隔符,进行分割输出,这里是选取第五段和第七段输出
echo $PATH | cut -d ':' -f 5-7 输出第五到第七段的内容
export
exprot | cut -c 12-20
grep
实操
选取passwd文件中某一行内容如mysql这一行
cat /etc/passwd
cat /etc/passwd |grep 'mysql' 只显示mysql字符串这一行的内容
grep 'mysql' < /etc/passwd 同样标准输出myslq这一行内容
last |grep -c 'root' 显示root出现了多少次
排序命令 sort wc uniq
sort命令
实操
cat /etc/passwd |sort passwd文件内容默认按字母顺序排序显示
sort -t ':' -k 3 <passwd 按数字排序显示
sort -t ':' -k 3 -n <passwd 按纯数字排序
sort -t ':' -k 3 -nr <passwd 按数字反向排序
last | cut -d ":" -f1 | sort 选取第一字段显示
last | cut -d " " -f1 | sort
last | cut -d " " -f1 | sort -u 重复的数据只显示一行
uniq命令和wc命令
实操
last | cut -d ' ' -f1 |uniq -c
wc /etc/passwd 统计文件内容的行数,字符数,字节大小
字符转换命令tr,col,join,paste,expand
实操
echo $PATH | tr -d ':' 将冒号剔除掉
echo $PATH | tr -s ':' '|' 将冒号替换为|
col和expand
实操
tail /etc/man.config | col -x |cat -A 将tab转换成空格
tail /etc/man.config | expand |cat -A 将tab转换成空格
tail /etc/man.config | expand -t 1 | cat -A 将tab键转换成一个空格键
join
实操
在tmp目录下
tail -n 4 /etc/passwd > passwd
tail -n 4 /etc/group > group
tail -n 4 /etc/shadow > shadow
cat -n passwd;cat -n group;cat -n shadow
join -t ':' passwd group | cat -n 将两组数据连成一行,以冒号为分隔符
join -t ":" -1 4 passwd -2 3 group | cat -n
paste
实操
tmp目录下
paste passwd group 直接将passwd的内容粘贴在group前面
paste -d ':' passwd group |cat -n 添加了分隔符冒号
tail -n 4 /etc/passwd | paste -d '=' group -
split
split -b 200 test123 test 将test123文件按200字节分割
split -l 2 test123 test 将test123文件以每两行内容分割文件
cat passwd-1* > passwdbdd 将分割后的文件合并为一个整文件
参数代换xargs
此命令用的比较多,可以进行批量操作和其他操作
find /home -type d | xargs chmod 755 将home目录下所有的文件夹权限更改为755