Linux系统常用命令 _2–文件管理

Ginc
Ginc
管理员
66
文章
0
粉丝
教程干货1 279阅读模式
前言 前面说了Linux系统种的常用命令,从这篇文章开始后面主要说一些Linux系统的操作。其中各命令参数并非全部。
以下内容以Centos系统为准,权限为root用户,其他系统请自行测试。

文件作为一个操作系统必要组成部分,在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 协议授权,本站部分资源收集于网络,只做学习和交流使用,版权归原作者所有。

weinxin
提示:
若文章中图片、链接等信息出错,请及时反馈,博主将在第一时间更新。谢谢大家!
 
Ginc
  • 本文由 Ginc 发表于2022年12月21日
  • 转载请保留本文链接:Linux系统常用命令 _2–文件管理:https://www.ginc.site/share1192.html
    • TeacherDu
      TeacherDu

      日常拜访!

    匿名

    发表评论

    匿名网友
    确定

    拖动滑块以完成验证