大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全家桶1年46,售后保障稳定
一、最简单的用法。只查看文件内容:
:~# cat a.txt
aaaaaaaaa
bbbbbbbbccc
ddd
ccee
ee
root@abb:~#
二、查找文件中的内容
:~# cat a.txt | grep cc
bbbbbbbbccc
ccee
三、利用cat创建文件
如果原来没有 b.txt 文件。那么:
:~# cat >b.txt <<EOF
> EOF
输入第一行后,输入EOF,回车,就可以生成一个 b.txt 文件。其中EOF是告诉 bash 哪个符号代表文件结束。当然你也可以使用自己习惯的符号。
四、利用cat清空文件内容
如果 c.txt 文件有很多内容,而你想要清空的话,同样可以使用上面提到的命令形式:
:~# cat >c.txt <<EOF
> EOF
五、利用cat向文件中写入内容,并覆盖以前的内容。
下面代码的步骤是这样的:先查看到 c.txt 没有内容,就向 c.txt 文件里写入内容,然后又写入新内容覆盖掉。
:~# cat c.txt
:~# cat >c.txt <<EOF
> 1111111
> 2222222
> EOF
:~# cat c.txt
1111111
2222222
:~# cat >c.txt <<EOF
> 33333333
> EOF
:~# cat c.txt
33333333
:~#
六、用 cat 命令向文件中写入内容的时候,对于 $ 符号的处理。
有些时候可能会利用cat命令生成一些 Shell 脚本文件。这个时候如果直接写 $ 符号,有可能被认为是调用变量,导致无法写入文件。
比如像下面一样直接输入 $ 的话:
:~# cat >d.sh <<EOF
> DATE=$(date +%Y%m%d)
> mkdir /root/$DATE
> EOF
那么 $ 符号并没有输入到文件中。文件内容会变成如下的样子
:~# cat d.sh
DATE=20161006
mkdir /root/
那么如果我们要把 $ 符号正常输入到文件中,该怎么办呢?
答案是需要在 $ 符号前面加 \ 。命令如下:
~# cat >d.sh <<EOF
> DATE=\$(date +%Y%m%d)
> mkdir /root/\$DATE
> EOF
这样把 $ 转义,就可以得到正常的文件内容了:
:~# cat d.sh
DATE=$(date +%Y%m%d)
mkdir /root/$DATE
七、向文件的尾部写入内容。
与写入新内容覆盖源文件相似。只是把原来的 > 换成 >> 即可。
可以像下面这样在文件尾部加入文字内容。
:~# cat >>a.txt <<EOF
> 11111
> 222222
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/207130.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...