cat命令是我们最为熟悉的Linux系统中文件内容查看命令,下面我们就来详细的了解了解它们吧!!
-
cat -A 查看有无空格等控制符,一些dos,widows系统传到Linux上会出现乱码,这就是因为在Linux系统中的换行与回车在文件中的表示方式和Windows不一样造成的,我们可以使用doc2unix工具来转换格式,可以使用yum install dos2unix下载
-
cat -n 对行进行编号
-
cat -b 非空行编号
-
cat -s 压缩相邻空行成为一行
-
tac 文件名 把文件逆序显示出来,首尾颠倒
-
与tac不同的是,rev会把行,以及每一行对字符全翻过来,比如
a b c d
e f g h
变为
h g f e
d c b a -
/dev/urandom
这个文件存放随机字符
可以当作口令生成器
cat /dev/urandom | tr -dc “a-zA-Z0-9_” | head -c 12
就会出现12位的随机字符 -
tail 一般用于查看日志文件
-
tail -数字 查看倒数第几行
-
tail -f 是跟踪查看,查看完内容不会立马退出,如果有新的内容,会立即显示,跟踪的是文件描述符,文件删除停止跟踪
和 head一样 支持 -c查看第几个字符 -n 第几行行号
head -数字 查看正数第几行 -
tail -F 跟踪文件名,文件删除,创建同名文件后继续跟踪
-
tailf 只有文件在增加内容的时候才会访问文件
不增长不会访问,这是企业工作需要的,对于服务器的压力很小 -
paste 把两个文件横向合并
纵向合并可以使用cat 输出重定向 cat f1 f2 > f3
就把f1,f2文件的内容合并到f3了 -
paste-d 指定你需要的分隔符 默认是Tab键
-
paste -s 所有行合成一行
-
wc -L 显示最长行的长度
-
**sort -t 指定分隔符 **
- -k 指定列
- -n 按数字大小排序
- -r 反方向排序
- -u 删除重复项
- -R 随机排序
- -f 忽略大小写
-
uniq 从输入中删除前后想接的重复行
- -c 显示每行重复过的次数
- -d 仅显示重复过的行
- -u 仅显示不重复的行
-
diff 命令比较两个文件的区别
-u详细显示
最适用于补丁文件
结合patch使用
比如 f1和f2文件相比之后,
diff -u命令输出的结果保存到一个文件f1.patch中
删除f2,就可以用以下还原
patch -b f1 f1.patch
-b是做备份,因为新生成的文件是f1命名的,不备份会把f1覆盖掉 -
head与tail结合例子
查出/tmp的权限,以数字方式显示
stat /tmp | head -4|tail -1| cut -d ’ ’ -f 1 |tr -dc '[0-9\n]' -
grep -v 取反,不包含
-
grep -f 规则文件 指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。
取交集除了可以使用uniq还可以使用grep -f f1 f2 包含f1文件内容的f2文件内容
是不是收获颇丰啊,其他基础用法在我其他博客里,有需要的可以去看看!
链接: 从零开始学习Linux