Linux快速入门(三)Linux文件管理

head命令用于显示文件的前几行内容,可以通过 -num参数展示文件前 num行的内容。

root@ubuntu:~# ls
bb.txt  cc.txt  snap
root@ubuntu:~# head cc.txt
Hello
Ubuntu
add test
root@ubuntu:~# head -2 cc.txt
Hello
Ubuntu

tail命令用于显示文件的后几行内容,可以通过 -num参数展示文件后 num行的内容。

root@ubuntu:~# tail cc.txt
Hello
Ubuntu
add test
root@ubuntu:~# tail -2 cc.txt
Ubuntu
add test

如果一个文件的内容过多,需要分成好几页显示的时候,就可以使用 more命令,默认会显示第一页的内容,可以通过 enter键查看下一行, 空格键查看下一页, b查看上一页, q键退出查看。

cp命令用于复制文件或者文件夹,复制的同时也可以进行改名操作,如: cp XXX YYY表示将 XXX复制为 YYY,如果不需要改名,那么 YYY只需要写到具体路径即可, XXXYYY可以是文件名也可以是一个路径。
将文件 1.txt复制为 2.txt

root@ubuntu:~# ls
1.txt  snap
root@ubuntu:~# cp 1.txt 2.txt
root@ubuntu:~# ls
1.txt  2.txt  snap

将文件 1.txt复制到 Music文件夹下且不重命名,这是只需要写具体路径 Music/即可:

root@ubuntu:~# ls
1.txt  Music  snap
root@ubuntu:~# cp 1.txt Music/
root@ubuntu:~# cd Music/
root@ubuntu:~/Music# ls
1.txt

将文件 1.txt复制到 Music文件夹下同时重命名为 2.txt

root@ubuntu:~# ls
1.txt  Music  snap
root@ubuntu:~# cp 1.txt ./Music/2.txt
root@ubuntu:~# cd Music/
root@ubuntu:~/Music# ls
2.txt

mv命令用于移动文件, mv XXX YYY表示将 XXX移动到 YYY,这里的移动类似于windows下的剪切操作, XXXYYY和上面的cp操作一样可以是路径也可以是文件名,如果是路径则表示,将 XXX路径下的文件移动到 YYY路径下,这里将 /root目录下的文件 1.txt移动到 Music目录下且不重命名:

root@ubuntu:~# pwd
/root
root@ubuntu:~# ls
1.txt  Music  snap
root@ubuntu:~# mv 1.txt Music/
root@ubuntu:~# ls
Music  snap
root@ubuntu:~# cd Music/
root@ubuntu:~/Music# ls
1.txt

/root目录下的文件 1.txt移动到 Music目录下且重命名为 2.txt

root@ubuntu:~# pwd
/root
root@ubuntu:~# ls
1.txt  Music  snap
root@ubuntu:~# mv 1.txt Music/2.txt
root@ubuntu:~# cd Music/
root@ubuntu:~/Music# ls
2.txt

除此之外, mv还可以实现文件重命名的效果,只需要将当前路径下的文件移动到当前文件夹下并重命名就可以实现:

root@ubuntu:~# ls
1.txt  Music  snap
root@ubuntu:~# mv 1.txt 3.txt
root@ubuntu:~# ls
3.txt  Music  snap

tar命令用于打包文件。
这两个常用命令分为两组:

[En]

The two commonly used commands are divided into two groups:

(1) tar -zcvftar -zxvf
tar -zcvf用于将文件打成 tar包并压缩为 .gz文件。
tar -zxvf用于对打包后的压缩包文件进行解压。

  • 参数详解:
    z参数用于表示使用gzip格式压缩或者解压一个文件
    c参数用于创建一个压缩文件
    v参数用于显示压缩或者解压的详细过程
    f参数用于指定压缩或者解压的文件名

(2) tar -jcvftar -jxvf
这一组命令与上一组命令唯一不同的地方在于这里使用的参数是 jj参数是指压缩或者解压的格式是 bzip2格式。

两组命令的使用场景:
(1)如果压缩文件是以 .tar.gz结尾使用 tar -zxvf命令进行解压。
(2)如果压缩文件是以 .tar.bz2结尾使用 tar -jxvf命令进行解压。
如果想将文件解压到指定的目录下可以再添加 -C参数。

find命令用于按照指定的条件查找文件,一般使用格式为 find 查找路径 [可选参数] 查找文件
可选参数:
-name指定需要查找的文件名。
-size匹配指定文件大小的文件,比如查找大于 100KB的文件使用参数 +100,小于 100KB的文件使用参数为 -100
在当前目录下查找文件名为 4.txt的文件,如果存在则会显示文件名,不存在则不显示:

root@ubuntu:~# ls
1.txt  2.txt  3.txt  4.txt  Music  snap
root@ubuntu:~# find . -name "4.txt"
./4.txt
root@ubuntu:~# find . -name "5.txt"
root@ubuntu:~#
root@ubuntu:~# cat 1.txt
aaaaaaaaa
bbbbbbbb
ccccccc
dddddd
eeeee
ffff
ggg
hh
i
root@ubuntu:~# grep ddd 1.txt
dddddd
root@ubuntu:~# grep -n ddd 1.txt
4:dddddd

wc命令用于统计文件中的行数或者单词数,命令分别为 wc -l 文件名wc -w 文件名

root@ubuntu:~# cat 1.txt
first line
second line
aaaa
bbbb
ddd
ff
root@ubuntu:~# wc -l 1.txt
6 1.txt
root@ubuntu:~# wc -w 1.txt
8 1.txt

tree命令用于以树状图的方式展示指定目录下的文件结构,命令格式为 tree 指定目录
使用此命令前需要先进行安装,我这里使用的是 Ubuntu 20,所以使用的命令是 sudo apt-get install tree,如果是 Centos则可以使用 yum install tree命令进行安装。

root@ubuntu:~# pwd
/root
root@ubuntu:~# tree
.
├── 1.txt
├── 2.txt
├── 3.txt
├── 4.txt
├── Music
└── snap
    └── firefox
        ├── 1540
        ├── 1747
        ├── common
        └── current -> 1747

7 directories, 4 files

在说文件权限之前,先介绍一下 Linux下关于文件的一些知识:

root@ubuntu:~# ll
total 48
drwx------  6 root root 4096 Aug 29 15:29 ./
drwxr-xr-x 19 root root 4096 Jul 18 21:50 ../
-rw-------  1 root root   76 Aug 29 10:06 .bash_history
-rw-r--r--  1 root root 3106 Oct 15  2021 .bashrc
drwx------  3 root root 4096 Jul  8 03:01 .cache/
-rw-------  1 root root   20 Jul  8 03:08 .lesshst
-rw-r--r--  1 root root  161 Jul  9  2019 .profile
drwx------  2 root root 4096 Jul  8 02:41 .ssh/
-rw-------  1 root root 2713 Aug 29 15:29 .viminfo
-rw-r--r--  1 root root   40 Aug 29 15:29 1.txt
-rw-r--r--  1 root root    0 Aug 29 15:22 2.txt
-rw-r--r--  1 root root    0 Aug 29 15:06 3.txt
-rw-r--r--  1 root root    0 Aug 29 15:22 4.txt
drwxr-xr-x  2 root root 4096 Aug 29 15:18 Music/
drwx------  3 root root 4096 Jul  8 03:05 snap/

我们使用 ll查看文件的时候,可以看到文件的详细信息,文件详细信息的 第一列是文件的格式, d表示该文件是一个目录, -表示该文件是一个普通文件, c表示为串行端口设备,如键盘鼠标等。
详细信息中的 第二到第四个字符是文件所有者对该文件拥有的权限, r表示读权限,通常使用数字 4表示, w表示写文件,通常使用数字 2表示, x表示执行权限,通常使用数字 1表示,如果拥有对应权限就会有对应的字符,如果是 -表示没有对应权限。
接下来的三个字符是当前用户所在组对该文件拥有的权限, 再接着的三个字符是其他用户对该文件的权限。

这时我们想对文件的权限进行修改时就可以通过 chmod命令加上需要修改的权限对应的数字组合进行修改,比如我想修改 4.txt的属性为只允许我自己拥有读写权限,其余人没有任何权限,就可以使用 chomd 600 文件名, 600中的 64+2得来,即 读权限+写权限, 6对应的是 前三个字符当前用户的权限,第二个 0对应的是当前用户 所属组的权限,第三个 0对应的是 其他用户对于这个文件的权限。

root@ubuntu:~/Music# ll
total 12
drwxr-xr-x 2 root root 4096 Aug 29 15:37 ./
drwx------ 6 root root 4096 Aug 29 15:37 ../
-rw-r--r-- 1 root root   40 Aug 29 15:29 1.txt
-rw-r--r-- 1 root root    0 Aug 29 15:22 2.txt
-rw-r--r-- 1 root root    0 Aug 29 15:06 3.txt
-rw-r--r-- 1 root root    0 Aug 29 15:22 4.txt
root@ubuntu:~/Music# chmod 600 4.txt
root@ubuntu:~/Music# ll
total 12
drwxr-xr-x 2 root root 4096 Aug 29 15:37 ./
drwx------ 6 root root 4096 Aug 29 15:37 ../
-rw-r--r-- 1 root root   40 Aug 29 15:29 1.txt
-rw-r--r-- 1 root root    0 Aug 29 15:22 2.txt
-rw-r--r-- 1 root root    0 Aug 29 15:06 3.txt
-rw------- 1 root root    0 Aug 29 15:22 4.txt

Original: https://www.cnblogs.com/Timesi/p/16636492.html
Author: 顾北清
Title: Linux快速入门(三)Linux文件管理

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/522797/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球