文档编辑

cat 命令:在终端设备上显示文件内容

Linux 系统中有很多个用于查看文件内容的命令,每个命令又都有自己的特点,比如这个 cat 命令就是用于查看内容较少的纯文本文件的。cat 这个命令也很好记,因为 cat 在英语中是“猫”的意思,小猫咪是不是给您一种娇小、可爱的感觉呢?

注意:当文件内容较大时,文本内容会在屏幕上快速闪动(滚屏),用户往往看不清所显示的具体内容。因此对于较长文件内容可以按 Ctrl+S 键,停止滚屏;以及 Ctrl+Q 键可以恢复滚屏;而按 Ctrl+C(中断)键则可以终止该命令的执行。或者对于大文件,干脆用 more 命令吧!

常用参数

参数 功能
-n 显示行数(空行也编号)
-s 显示行数(多个空行算一个编号)
-b 显示行数(空行不编号)
-E 每行结束处显示$符号
-T 将TAB字符显示为 ^I符号
-v 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
-e 等价于”-vE”组合
-t 等价于”-vT”组合
-A 等价于 -vET组合
–help 显示帮助信息
–version 显示版本信息

参考实例

cat filename.txt                        # 查看文件的内容
cat -n filename.txt                     # 查看文件的内容,并显示行数编号
cat -n linuxcool.log > linuxprobe.log   # 查看文件的内容,并添加行数编号后输出到另外一个文件中
cat /dev/null > /root/filename.txt      # 清空文件的内容
cat > filename.txt <<EOF                # 持续写入文件内容,碰到EOF符后结束并保存
cat /dev/fd0 > fdisk.iso                # 将软盘设备制作成镜像文件

echo 命令:输出字符串或提取Shell变量的值

echo 命令用于在终端设备上输出字符串或变量提取后的值,这是在 Linux 系统中最常用的几个命令之一,但操作却非常简单。

人们一般使用在变量前加上 $ 符号的方式提取出变量的值,例如:PATH,然后再用 echo 命令予以输出。或者直接使用 echo 命令输出一段字符串到屏幕上,起到给用户提示的作用。

常用参数

参数 功能
-n 不输出结尾的换行符
-e “\a” 发出警告音
-e “\b” 删除前面的一个字符
-e “\c” 结尾不加换行符
-e “\f” 换行,光标扔停留在原来的坐标位置
-e “\n” 换行,光标移至行首
-e “\r” 光标移至行首,但不换行
-E 禁止反斜杠转移,与-e参数功能相反
–version 查看版本信息
–help 查看帮助信息

参考实例

echo "Hello World!"                 # 输出一段字符串
echo $PATH                          # 输出变量提取后的值
echo \$PATH                         # 对内容进行转义,不让$符号的提取变量值功能生效
echo "Hello World!" > linuxcool     # 结合输出重定向符,将字符串信息导入文件中
echo `date`                         # 使用反引号符执行命令,并输出其结果到终端
echo -e "a\nb\nc"                   # 输出带有换行符的内容
echo -e "123\b456"                  # 输出信息中删除某个字符,注意看数字3消失了

tail 命令:查看文件尾部内容

tail 用于显示文件尾部的内容,默认在屏幕上显示指定文件的末尾10行。如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。如果没有指定文件或者文件名为 -,则读取标准输入。

常用参数

参数 功能
–retry 即是在tail命令启动时,文件不可访问或者文件稍后变得不可访问,都始终尝试打开文件。使用此选项时需要与选项“——follow=name”连用
-c<N>或–bytes=<N> 输出文件尾部的N(N为整数)个字节内容
-f<name/descriptor> –follow<nameldescript>:显示文件最新追加的内容
-F 与选项“-follow=name”和“–retry”连用时功能相同
-n<N>或–line=<N> 输出文件的尾部N(N位数字)行内容
–pid=<进程号> 与“-f”选项连用,当指定的进程号的进程终止后,自动退出tail命令
–help 显示指令的帮助信息
–version 显示指令的版本信息

参考实例

tail file           # 显示文件file的最后10行
tail +20 file       # 显示文件file的内容,从第20行至文件末尾
tail -c 10 file     # 显示文件file的最后10个字符
tail -f 10 file     # 一直变化的文件总是显示后10行

grep 命令:强大的文本搜索工具

grep 是 global search regular expression and print out the line 的简称,意思是全面搜索正则表达式,并将其打印出来。这个命令可以结合正则表达式使用,它也是Linux使用最为广泛的命令。

grep 命令的选项用于对搜索过程的补充,而其命令的模式十分灵活,可以是变量、字符串、正则表达式。需要注意的是:一当模式中包含了空格,务必要用双引号将其引起来。

Linux 系统支持三种形式的 grep 命令,大儿子就是 grep,标准,模仿的代表。二儿子兴趣爱好多 -egrep,简称扩展 grep 命令,其实和 grep -E 等价,支持基本和扩展的正则表达式。小儿子跑的最快 -fgrep,简称快速 grep 命令,其实和 grep -F 等价,不支持正则表达式,按照字符串表面意思进行匹配。

常用参数

参数 功能
-i 搜索时,忽略大小写
-c 只输出匹配行的数量
-l 只列出符合匹配的文件名,不列出具体的匹配行
-n 列出所有的匹配行,显示行号
-h 查询多文件时不显示文件名
-s 不显示不存在、没有匹配文本的错误信息
-v 显示不包含匹配文本的所有行
-w 匹配整词
-x 匹配整行
-r 递归搜索
-q 禁止输出任何结果,已退出状态表示搜索是否成功
-b 打印匹配行距文件头部的偏移量,以字节为单位
-o 与-b结合使用,打印匹配的词据文件头部的偏移量,以字节为单位

参考实例

grep zwx file_* /etc/hosts  # 对所有以file_开头的文件和/etc下的hosts文件匹配zwx
grep -c zwx file_*          # 输出匹配字符串行的数量
grep -n zwx file_*          # 列出所有的匹配行,并显示行号
grep -vc zwx file_*         # 显示不包含模式的所有行
Previous
Next