文件作为一个操作系统必要组成部分,在Linux系统种同样在重要。
1、新建文件
touch
语法:touch [选项] [文件名或文件目录]文章源自今夕何夕兮-https://www.ginc.site/share1192.html
示例:touch 123 新建名为123的文件文章源自今夕何夕兮-https://www.ginc.site/share1192.html
[root>NUC11tnhi50L:桌面]# touch 123 [root>NUC11tnhi50L:桌面]# ll 总用量 4 -rw-r--r--. 1 root root 0 12月 21 22:28 123
其中选项主要参数有:文章源自今夕何夕兮-https://www.ginc.site/share1192.html
-a 只有修改文件的access(访问)时间。文章源自今夕何夕兮-https://www.ginc.site/share1192.html
-c 或 --no-create 不创建不存在的文件。不存在的文件不会更改文章源自今夕何夕兮-https://www.ginc.site/share1192.html
-d 使用指定的日期时间,而非实时时间。只能修改年月日。文章源自今夕何夕兮-https://www.ginc.site/share1192.html
-m 指修改modify(修改)时间,而不修改access时间。文章源自今夕何夕兮-https://www.ginc.site/share1192.html
-r fila 使用指定file文件的时间戳(access ,modify)更新文件的时间戳(access ,modify)文章源自今夕何夕兮-https://www.ginc.site/share1192.html
-t 将时间修改为参数指定的日期,如:10011150 代表10月8日11点55分。文章源自今夕何夕兮-https://www.ginc.site/share1192.html
主要参数示例:文章源自今夕何夕兮-https://www.ginc.site/share1192.html
[root>NUC11tnhi50L:桌面]# touch -a 123 #修改访问时间为当前时间 [root>NUC11tnhi50L:桌面]# stat 123 文件:123 大小:0 块:0 IO 块:4096 普通空文件 设备:fd02h/64770d Inode:805306684 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:user_home_t:s0 最近访问:2022-12-21 22:33:19.768553270 +0800 #已变化 最近更改:2022-12-21 22:28:17.116573128 +0800 最近改动:2022-12-21 22:33:19.768553270 +0800 创建时间:2022-12-21 22:28:17.116573128 +0800
[root>NUC11tnhi50L:桌面]# touch -d 2022-10-12 123 #修改访问时间为指定时间,而非现在的时间 [root>NUC11tnhi50L:桌面]# stat 123 文件:123 大小:0 块:0 IO 块:4096 普通空文件 设备:fd02h/64770d Inode:805306684 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:user_home_t:s0 最近访问:2022-10-12 00:00:00.000000000 +0800 最近更改:2022-10-12 00:00:00.000000000 +0800 最近改动:2022-12-21 22:35:26.847544932 +0800 创建时间:2022-12-21 22:28:17.116573128 +0800
[root>NUC11tnhi50L:桌面]# touch -t 11111111 123 [root>NUC11tnhi50L:桌面]# stat 123 文件:123 大小:0 块:0 IO 块:4096 普通空文件 设备:fd02h/64770d Inode:805306684 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:user_home_t:s0 最近访问:2022-11-11 11:11:00.000000000 +0800 最近更改:2022-11-11 11:11:00.000000000 +0800 最近改动:2022-12-21 22:36:53.358539256 +0800 创建时间:2022-12-21 22:28:17.116573128 +0800
[root>NUC11tnhi50L:桌面]# touch -t 11111111 123 #将时间修改为参数指定的日期 [root>NUC11tnhi50L:桌面]# stat 123 文件:123 大小:0 块:0 IO 块:4096 普通空文件 设备:fd02h/64770d Inode:805306684 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:user_home_t:s0 最近访问:2022-11-11 11:11:00.000000000 +0800 最近更改:2022-11-11 11:11:00.000000000 +0800 最近改动:2022-12-21 22:36:53.358539256 +0800 创建时间:2022-12-21 22:28:17.116573128 +0800
扩展:
1、Linux系统中文件存储方式为: inode节点+block块,其中文件的源数据存储在inode,文件内具体数据存储在block块中,使用stat命令查看inode数据,如下:
[root>NUC11tnhi50L:桌面]# stat 123 文件:123 大小:0 块:0 IO 块:4096 普通空文件 设备:fd02h/64770d Inode:805306684 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:user_home_t:s0 最近访问:2022-12-21 22:28:17.116573128 +0800 最近更改:2022-12-21 22:28:17.116573128 +0800 最近改动:2022-12-21 22:28:17.116573128 +0800 创建时间:2022-12-21 22:28:17.116573128 +0800
2、文件的3time:atime(access time) mtime(modify time) ctime(change time)
atime 文件的最后访问时间 即:最近访问:2022-12-21 22:28:17.116573128 +0800
ctime 文件inode节点数据改动时间。包括文件权限、拥有者。所有者、链接发生改变,例如文件名。即:最近改动:2022-12-21 22:28:17.116573128 +0800
mtime 文件内容最后更改时间 即:最近更改:2022-12-21 22:28:17.116573128 +0800
注:ctime发生变化mtime不一定变化。mtime 变化三个时间都会变化。
2、文件的删除
rm
语法:rm [选项] 文件名
命令选项:(options)
-i 删除前逐一询问,默认带-i,不加也会询问。
-f 使原档案属性设为只读,并直接删除,无需确认。强制删除
-r 将目录及文件夹内文件逐一删除。递归删除。
注:Linux系统初学者不建议使用这个命令,可能会对系统造成无法挽回的损失。
3、文件的改名
mv
语法:mv old_file new_file
例:
[root>NUC11tnhi50L:桌面]# mv 123 456 [root>NUC11tnhi50L:桌面]# ll 总用量 4 -rw-r--r--. 1 root root 0 11月 11 11:11 456
4、查看文件
1、通过文件类型查看
- 普通文件
d 目录
l 链接文件
b 设备文件
c 字符设备
s 套接字文件
p 管道文件
例:
[root>NUC11tnhi50L:桌面]# ls -l / 总用量 28 dr-xr-xr-x. 2 root root 6 8月 10 2021 afs lrwxrwxrwx. 1 root root 7 8月 10 2021 bin -> usr/bin dr-xr-xr-x. 5 root root 4096 12月 7 16:23 boot drwxr-xr-x. 19 root root 3600 12月 8 15:08 dev drwxr-xr-x. 132 root root 8192 12月 8 15:49 etc drwxr-xr-x. 3 root root 16 12月 3 14:10 home lrwxrwxrwx. 1 root root 7 8月 10 2021 lib -> usr/lib lrwxrwxrwx. 1 root root 9 8月 10 2021 lib64 -> usr/lib64 drwxr-xr-x. 2 root root 6 8月 10 2021 media drwxr-xr-x. 2 root root 6 8月 10 2021 mnt drwxr-xr-x. 2 root root 6 8月 10 2021 opt dr-xr-xr-x. 384 root root 0 12月 8 15:08 proc dr-xr-x---. 4 root root 4096 12月 11 21:05 root drwxr-xr-x. 43 root root 1160 12月 21 06:10 run lrwxrwxrwx. 1 root root 8 8月 10 2021 sbin -> usr/sbin drwxr-xr-x. 2 root root 6 8月 10 2021 srv dr-xr-xr-x. 13 root root 0 12月 8 15:08 sys drwxrwxrwt. 16 root root 4096 12月 21 22:25 tmp drwxr-xr-x. 12 root root 144 12月 3 14:04 usr drwxr-xr-x. 20 root root 4096 12月 3 14:09 var
其中第一个字符表示的就是文件类型。
2、通过文件颜色查看
绿色:可执行文件,可执行程序。
红色:压缩文件或者包文件。
蓝色:目录
白色:一般文件,如文本文件,配置文件等。
浅蓝色:链接文件
红色闪烁:链接的文件有问题。
黄色:设备文件
灰色:其他文件
粉色:套接字文件
例:
5、文件的移动
mv #与改名为同一命令,主要区别在目标位置是文件还是文件夹
语法:mv [选项] 源文件或文件夹 目标文件或文件夹
主要选项:
-b 若需要覆盖文件,则线备份文件。
-i 若指定目录已有同名文件,则询问是否覆盖。
-f force 强制移动,若有同名文件则不询问直接覆盖。
-u 若目标文件已存在,则比较新旧,新文件才会更新。判断mtime,ctime
例:
[root>NUC11tnhi50L:桌面]# mkdir lin #新建一个lin文件夹 [root>NUC11tnhi50L:桌面]# ll 总用量 4 -rw-r--r--. 1 root root 0 11月 11 11:11 456 -rw-r--r--. 1 ly ly 836 12月 3 14:16 '无标题文档 1' drwxr-xr-x. 2 root root 6 12月 21 22:53 lin [root>NUC11tnhi50L:桌面]# mv 456 lin [root>NUC11tnhi50L:桌面]# ll 总用量 4 -rw-r--r--. 1 ly ly 836 12月 3 14:16 '无标题文档 1' drwxr-xr-x. 2 root root 17 12月 21 22:53 lin
6、文件的拷贝
cp
语法:cp [选项] 源文件或目录 目标目录
语法:cp[选项]源文件或目录 目标目录
命令选项:
-a 此选项通常在复制目录时使用,保留源文件链接,文件属性,并复制目录下所有内容。
-d 复制时保留链接,相当于win系统中的快捷方式。
-f 覆盖已存在的目标文件,强制,无提示。
-i 覆盖之前询问确认是否覆盖。
-p 除复制文件内容外,还把修改时间和访问权限也复制到新文件中。
-r 若给出的源文件时目录,则复制该目录下所有的文件及子目录。
-l 不复制文件,只生成链接文件,即win系统中的快捷方式。
转载请注明来自:今夕何夕兮
本站原创内容版权遵循 CC-BY-NC-SA4.0 协议授权,本站部分资源收集于网络,只做学习和交流使用,版权归原作者所有。

中国–安徽–六安 1F
日常拜访!