参考资料
目录
- [零. 文件准备](#零. 文件准备)
- [一. 用法简介](#一. 用法简介)
- [二. 文件合并](#二. 文件合并)
- [三. 创建文件](#三. 创建文件)
- [四. 清空文件](#四. 清空文件)
- [五. `-T`显示制表符](#五.
-T
显示制表符) - [六. tac反向显示文件内容](#六. tac反向显示文件内容)
零. 文件准备
bash
apluser@ubuntu24-01:~/work/20250326$ cat file1.txt
dav.jianguoyun.com
GetNetworkCredential
apluser@ubuntu24-01:~/work/20250326$ cat file2.txt
Password
UserName
apluser@ubuntu24-01:~/work/20250326$ cat file3.txt
username
password
一. 用法简介
⏹ cat命令主要用于显示文件内容
-n, --number
:为所有行输出行号-T, --show-tabs
:将制表符(TAB)显示为^I
。
bash
cat [选项...] [文件...]
二. 文件合并
-n
:用于显示行号- 用于文件合并的时候,按照文件名默认排序的方式获取内容并合并
bash
apluser@ubuntu24-01:~/work/20250326$ cat -n file1.txt file2.txt file3.txt
1 dav.jianguoyun.com
2 GetNetworkCredential
3 Password
4 UserName
5 username
6 password
apluser@ubuntu24-01:~/work/20250326$
apluser@ubuntu24-01:~/work/20250326$ cat -n file{1..3}.txt
1 dav.jianguoyun.com
2 GetNetworkCredential
3 Password
4 UserName
5 username
6 password
apluser@ubuntu24-01:~/work/20250326$ cat -n file*.txt
1 dav.jianguoyun.com
2 GetNetworkCredential
3 Password
4 UserName
5 username
6 password
apluser@ubuntu24-01:~/work/20250326$
- 也可以通过下面这种方式进行倒序排序之后再合并
bash
apluser@ubuntu24-01:~/work/20250326$ cat $(ls -r file*)
username
password
Password
UserName
dav.jianguoyun.com
GetNetworkCredential
apluser@ubuntu24-01:~/work/20250326$ find . -maxdepth 1 -type f -name "file*" | sort -r | xargs cat
username
password
Password
UserName
dav.jianguoyun.com
GetNetworkCredential
apluser@ubuntu24-01:~/work/20250326$
- 将标准输入与另外一个文件中的数据组合在一起
bash
apluser@ubuntu24-01:~/work/20250326$ cat <(echo "hello world") file1.txt
hello world
dav.jianguoyun.com
GetNetworkCredential
apluser@ubuntu24-01:~/work/20250326$ cat <(echo -e "hello world\n你好 世界") file1.txt
hello world
你好 世界
dav.jianguoyun.com
GetNetworkCredential
apluser@ubuntu24-01:~/work/20250326$ echo -e "hello world\n你好 世界" | cat file1.txt -
dav.jianguoyun.com
GetNetworkCredential
hello world
你好 世界
三. 创建文件
- 通过
cat > 文件名
的方式来新建文件 - 输入命令后,然后回车,光标会停留在终端,等待用户输入
- 输入或者粘贴完内容之后,最后一行若想要保留的话,最后一行一定要敲一个回车
- 最后按下键盘的
Ctrl + C
即可完成文件的保存 ^C
便是按下Ctrl + C
后的印记- 🧐可以通过这种方式来创建
.sh
脚本文件
bash
apluser@ubuntu24-01:~/work/20250326$ cat > info.txt
lsof命令
查看文件夹被哪个进程占用
^C
apluser@ubuntu24-01:~/work/20250326$ cat info.txt
lsof命令
查看文件夹被哪个进程占用
apluser@ubuntu24-01:~/work/20250326$
四. 清空文件
/dev/null
是 Linux 和 Unix 系统中的一个特殊设备文件,俗称黑洞
- 作用是 丢弃所有写入它的数据,并且读取时返回空内容
bash
cat /dev/null > file.txt
五. -T
显示制表符
-T
:用于将制表符TAB表示为^I
bash
apluser@ubuntu24-01:~/work/20250326$ cat info.txt
lsof命令
查看文件夹被哪个进程占用
apluser@ubuntu24-01:~/work/20250326$ cat -T info.txt
lsof命令
^I查看文件夹被哪个进程占用
apluser@ubuntu24-01:~/work/20250326$ cat --show-tabs info.txt
lsof命令
^I查看文件夹被哪个进程占用
apluser@ubuntu24-01:~/work/20250326$
六. tac反向显示文件内容
bash
apluser@ubuntu24-01:~/work/20250326$ cat file1.txt
dav.jianguoyun.com
GetNetworkCredential
apluser@ubuntu24-01:~/work/20250326$ tac file1.txt
GetNetworkCredential
dav.jianguoyun.com
apluser@ubuntu24-01:~/work/20250326$