shell命令--cat_解决方法shell命令--cat



shell命令--cat

0、cat命令的专属图床

点此快速打开文章【图床_shell命令cat

1、cat命令的功能说明

​ ​​cat​​ 命令用于连接多个文件并且打印到屏幕输出或重定向到指定文件中

2、cat命令的语法格式

SYNOPSIS
cat [OPTION]... [FILE]...

3、cat命令的选项说明

  • -n 或 --number:由 1 开始对所有输出的行数编号。
  • -b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
  • -s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
  • -v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
  • -E 或 --show-ends :在每行结束处显示 $。
  • -T 或 --show-tabs: 将 TAB 字符显示为 ^I。
  • -A, --show-all:等价于 -vET。
  • -e:等价于"-vE"选项;
  • -t:等价于"-vT"选项;

4、cat命令的实践操作

范例1:执行 ​​cat​​ 命令的完整命令生成 ​​stu.txt​​ 文件内容,并且不带参数查看内容

cd && rm -rf /test  -->将之前的实验环境删除掉。提示:rm -rf 谨慎使用!
mkdir /test && cd /test
cat >file.txt <<EOF -->起始符。注意,结尾不要有其他字符,包括空格
I Love Linux

Me too

very good
EOF -->结束符。注意,结尾不要有其他字符,包括空格

cat file.txt -->直接查看
  • 温馨提示:若查看动图演示,请右键此处,选择【在新标签页中打开链接】
  • 温馨提示:若查看静图演示,请右键此处,选择【在新标签页中打开链接】

范例2:执行 ​​cat​​ 命令,分别带 ​​-n​​ 及 ​​-b​​ 选项,并对比区别

cat -n file.txt  -->-n打印行号,包括空行
cat -b file.txt -->-b也打印行号,但不包括空行
  • 温馨提示:若查看动图演示,请右键此处,选择【在新标签页中打开链接】
  • 温馨提示:若查看静图演示,请右键此处,选择【在新标签页中打开链接】

范例3:执行 ​​cat​​ 命令,带 ​​-E​​ 参数

cat -E file.txt
echo >file.txt -->后续会介绍echo命令
cat -E file.txt -->结束标识符$,即使是空行也要显示$
  • 温馨提示:若查看动图演示,请右键此处,选择【在新标签页中打开链接】
  • 温馨提示:若查看静图演示,请右键此处,选择【在新标签页中打开链接】

范例4:执行 ​​cat​​ 命令,带 ​​-s​​ 参数

cat >>file.txt <<EOF


If you like my blog

call me qq
EOF -->追加几行文字

cat -E file.txt -->可以检查是否有空格
cat -n file.txt
cat -s -n file.txt -->连续空行只显示一行
  • 温馨提示:若查看动图演示,请右键此处,选择【在新标签页中打开链接】
  • 温馨提示:若查看静图演示,请右键此处,选择【在新标签页中打开链接】

范例5:使用 ​​cat​​ 命令时,解决特殊字符消失问题

模拟问题

cat >>test.txt <<EOF
原始数据:/$test/$
EOF

cat test.txt -->此时会发现个别$符不见了,肿么办?
  • 温馨提示:若查看动图演示,请右键此处,选择【在新标签页中打开链接】
  • 温馨提示:若查看静图演示,请右键此处,选择【在新标签页中打开链接】

解决方法1

cat >>test.txt <<EOF
解决方法1:/\$test/\$ -->在每个特殊字符前加\
EOF

cat test.txt -->再次查看
  • 温馨提示:若查看动图演示,请右键此处,选择【在新标签页中打开链接】
  • 温馨提示:若查看静图演示,请右键此处,选择【在新标签页中打开链接】

解决方法2

cat >>test.txt <<'EOF'  -->所见即所得,加单引号
解决方法2:/$test/$ -->这里该是啥写啥
EOF

cat test.txt -->再次查看
  • 温馨提示:若查看动图演示,请右键此处,选择【在新标签页中打开链接】
  • 温馨提示:若查看静图演示,请右键此处,选择【在新标签页中打开链接】