04、Linux 实战 - 文件操作命令

文件操作命令

touch

作用:创建空文件或者修改时间戳
执行权限:所有用户

rm(Remove)

作用:删除文件或目录。
执行权限:所有用户。
常用选项:

选项 作用
-r 递归删除,可以用来删除目录。
-f 强制删除,删除前不会再询问。
-i 删除前逐一确认。

注意:Linux没有回收站,重要文件注意备份,或者安装文件恢复工具。

stat(State)

作用:查看文件的详细信息。
执行权限:所有用户。
例:

[root@ddkk.com ~]# stat anaconda-ks.cfg 
  文件:anaconda-ks.cfg
  大小:1134      	块:8          IO 块:4096   普通文件
设备:802h/2050d	Inode:138164      硬链接:1
权限:(0600/-rw-------)  Uid:(    0/    root)   Gid:(    0/    root)
环境:system_u:object_r:admin_home_t:s0
最近访问:2021-10-15 00:20:29.732644006 -0400
最近更改:2021-10-15 00:20:30.073663646 -0400数据修改时间
最近改动:2021-10-15 00:20:30.073663646 -0400状态修改时间
创建时间:2021-10-15 00:20:29.732644006 -0400 

cat(Concatenate)

作用:查看文件内容。
执行权限:所有用户。
常用选项:

选项 作用
-n 显示每行的行号。
-E 列出每行结尾的回车符$。
-T 把TAB键用^I表示出来。
-v 列出特殊字符。
-A 相当于-vET,把所有隐藏符号都标出来。

more

作用:分屏显示文件内容。
执行权限:所有用户。
使用方法:

按键 功能
空格键 向下翻页。
b 向上翻页。
回车键 向下滚动一行。
/ 搜索指定的字符串。
q 退出。

less

作用:分行显示文件内容。
执行权限:所有用户。
使用方法:方向键上下可以逐行查看内容,q键可以退出。

head

作用:查看文件头。
执行权限:所有用户。

可以查看文件的头十行,head -n可以指定行数。
例:

[root@ddkk.com ~]# head -n6 anaconda-ks.cfg         查看anaconda-ks.cfg的头六行
#version=RHEL8
# Use graphical install
graphical
%packages

tail

作用:显示文件尾。
执行权限:所有用户。
可以查看文件的最后几行,tail -n可以指定行数,并且tail -f可以实时监听文件的新增内容。

ln(Link)

作用:在文件之间建立链接。
执行权限:所有用户。
inode(节点):每个目录或文件都有自己的inode码,通过inode码可以找到相对应的block(数据块),block里面存放着文件或目录的数据以及目录下文件的文件名和inode,要找到一个文件,首先要通过根目录(根目录的inode永远为2。)的block找到相应的目录,再由目录的block找到次级目录,一级一级,最后找到需要的文件。

硬链接(ln)

[root@ddkk.com ~]# ln bcd abc
[root@ddkk.com ~]# cd abc
[root@ddkk.com abc]# ls
bcd
[root@ddkk.com ~]# ls -il bcd abc/bcd
138167 -rw-r--r--. 2 root root 11 1月   5 03:41 abc/bcd
138167 -rw-r--r--. 2 root root 11 1月   5 03:41 bcd
#建立硬链接文件,如果没有写文件名,文件名会与源文件一致

特征

  • 源文件和硬链接文件有相同的inode和block
  • 修改任意一个文件,另一个文件也会改变。
  • 删除任意一个文件,另一个文件仍能使用。
  • 硬链接标记不清,很难区分硬链接文件位置,一般不使用。
  • 硬链接不能链接目录,
  • 硬链接不能跨分区。

沈超老师的奇妙比喻:可以把inode和所指向的block比作一个教室,原先的文件相当于教室的一个门,可以进入教室,建立硬链接文件相当于再开了一个门,当修改文件时变化是一样的,删除其中一个相当于堵住一个门,另一个门仍然可以正常使用。

软链接(ln -s)

[root@ddkk.com ~]# ln -s /root/bcd /tmp/bcd_s
[root@ddkk.com ~]# ls -il /tmp
总用量 0
524301 lrwxrwxrwx. 1 root root 9 1月   5 04:20 bcd_s -> /root/bcd

特征

  • 软链接必须使用绝对路径。
  • 软链接和源文件有着不同的inode和block。
  • 两文件任意修改一个,另一个也会改变。
  • 删除软链接,源文件不受影响,删除源文件,软链接不能使用。
  • 软链接没有实际数据,只有源文件的inode,不论源文件多大,软链接大小不变。
  • 软链接是最大权限lrwxrwxrwx,但是由于没有实际数据,实际参考源文件权限。
  • 软链接可以链接目录。
  • 软链接可以跨分区。
  • 软链接特征明显,建议使用软链接。

目录和文件都能操作的命令

rm(Remove)

同上

cp(Copy)

作用:复制文件和目录。
执行权限:所有用户。
常用选项:

选项 作用
-r 递归复制,用于复制目录。
-d 如果源文件是软链接,则复制出来的文件也是软链接。
-p 复制出来的目标文件保留源文件的属性。
-a 相当于-dpr选项的集合。
-i 询问,如果目标文件已经存在,询问是否要进行覆盖。

mv(Move)

作用:移动文件或重命名。
执行权限:所有用户。
常用选项:

选项 作用
-f 强制覆盖,如果目标文件已经存在,强制覆盖。
-i 交互移动,如果目标文件已经存在,询问用户是否覆盖(默认选项)。
-v 显示详细信息。