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