文本相关
&& 和 ||
其实就是逻辑运算里面的
与和或
管道
通常我们在命令行中使用匿名管道,由分隔符 | 表示,而命名管道更常出现在源代码中。
例如:
ls -a | grep mysql
这个命令就是先执行 ls -a 命令,然后将输出结果作为输入执行grep mysql命令在其中查找包含mysql的文件。这个例子很好,就直接复制了嘎嘎嘎
grep命令
grep -r "ehpc" ~
搜索 ~ 目录下所有包含"ehpc"的文件。
wc 命令
统计并输出一个文件中行、字节等数据的数目
-l 参数表示行数,-c 参数表示字节数
结合管道,统计文件的个数
ls -a | wc -l
uniq命令
除去重复行
cat words | uniq
uniq只除去连续重复的的行
如果希望全文达到同样的效果需要先使用 sort 命令进行排序
cat words | sort | uniq
文本处理
sort
排序
默认为字典排序:
ls -a | sort
反转排序:
ls -a | sort -r
col
实现tab和空格相互转换
cat myFile | col -x | cat -A
-x 参数表示将 tab 转换成空格,而 -h 参数则相反。
tr
替换
使用-d 参数删除
echo "Hello world!" | tr -d "el"
这样会删除"Hello world!"中所有的“e”和“l”。
将小写转换成大写:
echo "Hello world!" | tr '[a-z]' '[A-Z]'
paste
合并文件。
将数据以 ‘;’ 为分隔符合并
paste -d ';' data1 data2 data3