Linux 基础二

Linux发行版系统目录名称命名规则及用途

Linux 基础二

目录用途:
/bin 存放系统命令
/boot 存放着系统的启动文件和内核
/dev 设备文件主目录
/etc 系统 主配置文件 主目录
/home 普通用户的家目录
/root 超级用户root家目录
/run 存放当前运行程序库的目录(当前运行的目录)
/sbin 超级用户使用的命令存放的目录
/tmp 临时文件存放目录 系统启动过程中会产生一些临时文件,这些临时文件就存放在tmp目录下
/usr 包含了所有的共享文件, 涵盖了二进制文件,各种文档,各种头文件
/var 系统配置文件主目录

命名法则及规定:
文件命令规则:
1、除了/(根目录)之外,所有的字符都合法。
2、有些字符最好不用,如空格符、制表符、退格符和字符@#¥()- 等。
3、避免使用 ? 作为普通文件名的第一个字符。
4、大小写敏感
5、文件名最长255个字节
6、包括路径在内文件名称最长4095个字节
7、以. 开头的文件为隐藏文件

文件元数据信息

  • inode number 节点号
  • 文件类型
  • 权限
  • UID
  • GID
  • 链接数
  • 该文件的大小和不同的时间戳
  • 指向磁盘上文件的数据块指针

元数据查看

[root@centos7 ~]# stat anaconda-ks.cfg 
  文件:"anaconda-ks.cfg"
  大小:1444       块:8          IO 块:4096   普通文件
设备:802h/2050d   Inode:201326671   硬链接:1
权限:(0600/-rw-------)  Uid:(    0/    root)   Gid:(    0/    root)
环境:system_u:object_r:admin_home_t:s0
最近访问:2020-10-18 08:45:17.342004926 +0800
最近更改:2020-10-18 08:45:17.344004925 +0800
最近改动:2020-10-18 08:45:17.344004925 +0800
创建时间:-

修改文件时间戳信息

每个文件有三个时间戳

  • access time ,atime,读取文件内容
  • modify time,mtime,改变文件内容、数据
  • change time,ctime,元数据发生改变

touch -a 仅改变atime和ctime
touch -m 仅改变mtime和ctime
touch -t [[CC]YY]MMDDhhmm[.ss] 指定atime和mtime时间戳

[root@centos7 ~]# touch a
[root@centos7 ~]# ll
总用量 4
-rw-r--r--. 1 root root    0 10月 18 09:25 a
-rw-------. 1 root root 1444 10月 18 08:45 anaconda-ks.cfg
[root@centos7 ~]# stat a
  文件:"a"
  大小:0          块:0          IO 块:4096   普通空文件
设备:802h/2050d   Inode:201326691   硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2020-10-18 09:25:53.766907183 +0800
最近更改:2020-10-18 09:25:53.766907183 +0800
最近改动:2020-10-18 09:25:53.766907183 +0800
创建时间:-
[root@centos7 ~]# touch -a a
[root@centos7 ~]# stat a
  文件:"a"
  大小:0          块:0          IO 块:4096   普通空文件
设备:802h/2050d   Inode:201326691   硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2020-10-18 09:26:23.778057425 +0800
最近更改:2020-10-18 09:25:53.766907183 +0800
最近改动:2020-10-18 09:26:23.778057425 +0800
创建时间:-
[root@centos7 ~]# touch -m a
[root@centos7 ~]# stat a
  文件:"a"
  大小:0          块:0          IO 块:4096   普通空文件
设备:802h/2050d   Inode:201326691   硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2020-10-18 09:26:23.778057425 +0800
最近更改:2020-10-18 09:26:41.115149644 +0800
最近改动:2020-10-18 09:26:41.115149644 +0800
创建时间:-

软链接和硬链接的区别

硬链接本质上就是给一个文件取一个新的名称,实质是同一个文件

ln filename [linkname]

软链接指向另一个文件,类似快捷方式,软链接文件和原文件本质上不是同一个文件

ln -s filename [linkname]

[root@centos7 ~]# touch b
[root@centos7 ~]# ll
总用量 4
-rw-r--r--. 1 root root    0 10月 18 09:26 a
-rw-------. 1 root root 1444 10月 18 08:45 anaconda-ks.cfg
-rw-r--r--. 1 root root    0 10月 18 09:31 b
[root@centos7 ~]# ln a c
[root@centos7 ~]# ll
总用量 4
-rw-r--r--. 2 root root    0 10月 18 09:26 a
-rw-------. 1 root root 1444 10月 18 08:45 anaconda-ks.cfg
-rw-r--r--. 1 root root    0 10月 18 09:31 b
-rw-r--r--. 2 root root    0 10月 18 09:26 c
[root@centos7 ~]# ln -s b d
[root@centos7 ~]# ll
总用量 4
-rw-r--r--. 2 root root    0 10月 18 09:26 a
-rw-------. 1 root root 1444 10月 18 08:45 anaconda-ks.cfg
-rw-r--r--. 1 root root    0 10月 18 09:31 b
-rw-r--r--. 2 root root    0 10月 18 09:26 c
lrwxrwxrwx. 1 root root    1 10月 18 09:31 d -> b
[root@centos7 ~]# 

Linux 基础二

文件管理命令

管理目录类相关命令

tree 查看目录

[root@centos7 ~]# tree
.
├── a
├── anaconda-ks.cfg
├── b
├── c
└── d -> b

0 directories, 5 files

mkdir 创建目录
-m 指定创建文件的模式(权限)
-p 递归创建目录,父目录若不存在,也希望自动创建
-v 创建目录时给出详细说明,并在创建目录时列出它们

rmdir 删除目录
-p 删除目录及其空的父目录
-v 输出每个目录的处理信息

管理文件类相关命令

ls 查看文件列表
stat 查看文件属性信息
file 查看文件类型
touch 创建文件
cp 复制文件
mv 移动文件或重命名
-i 覆盖前提示用户
-f 直接覆盖不提示
-b 文件存在是,为其创建一个备份
rm 删除文件
-i 在删除每个文件之前请求确认
-f 强制删除文件,不提示确认,并自动忽略不存在的文件
-r 递归删除
-no-preserve-root 删除“/”时使用,慎用

Linux 基础二

上一篇:MacBook修改显示器分辨率以及黑色侧边解决


下一篇:Ubuntu 16.04 RobotWare 开发环境配置