文件属性:
以root身份登上后,执行ll -h(查看文件详细属性包括隐藏文件)
[root@oldboy ~]# ll -h
total 56M
-rw-r--r--. 1 root root 672 Jul 30 16:41 1.txt
-rw-r--r--. 1 root root 56M Jul 30 16:22 access.log
-rw-------. 1 root root 1.7K Jul 24 15:27 anaconda-ks.cfg
-rw-r--r--. 1 root root 0 Jul 29 10:04 file
-rw-r--r--. 1 root root 0 Jul 29 10:34 file1
-rw-r--r--. 1 root root 16 Jul 30 11:32 file1.txt
- 第一列第一个字符 表示文件类型--->
- rw-r--r-- 权限(下周)
- 1 这个文件被链接次数
- root 文件的拥有者(用户)
- root 文件的拥有组(用户组 ==>家族)
- 672 文件大小
- Jul 30 16:41 文件的日期,以及创建的文件的时间
- 1.txt 文件名称
文件类型
[root@oldboy ~]# ll -d /etc/hosts /tmp /bin/ls /dev/sda /dev/tty1 /etc/grub2.cfg /dev/log
-rwxr-xr-x. 1 root root 117680 Oct 31 2018 /bin/ls
srw-rw-rw-. 1 root root 0 Jul 31 08:43 /dev/log
brw-rw----. 1 root disk 8, 0 Jul 31 08:44 /dev/sda
crw--w----. 1 root tty 4, 1 Jul 31 08:44 /dev/tty1
lrwxrwxrwx. 1 root root 22 Jul 24 15:20 /etc/grub2.cfg -> ../boot/grub2/grub.cfg
-rw-r--r--. 1 root root 158 Jun 7 2013 /etc/hosts
drwxrwxrwt. 23 root root 4096 Jul 31 09:52 /tmp
- - 文件 (普通文件 图片 压缩包)
- s socket 本地进程与进程间的一种通信方式 (mysql)
- b块设备文件 (硬盘 光盘 分区)
- c 字符设备 用于提供用户的输入与输出
- l 链接文件 类似windows的快捷方式
- d 目录 类似windows的文件夹
对于一些文件无法精准的区分类型, 可以使用file命令查看
[root@oldboy ~]# file /etc/hosts /tmp /bin/ls /dev/sda /dev/tty1 /etc/grub2.cfg /dev/log
/etc/hosts: ASCII text
/tmp: sticky directory
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=ceaf496f3aec08afced234f4f36330d3d13a657b, stripped
/dev/sda: block special
/dev/tty1: character special
/etc/grub2.cfg: symbolic link to `../boot/grub2/grub.cfg'
/dev/log: socket
链接文件
软连接
[root@oldboy ~]# mkdir meitu_v1.1
[root@oldboy ~]# ln -s /root/meitu_v1.1 /root/mt
升级
[root@oldboy ~]# mkdir meitu_v1.2
[root@oldboy ~]# rm -f /root/mt && ln -s /root/meitu_v1.2/ /root/mt
回退
[root@oldboy ~]# rm -f mt && ln -s /root/meitu_v1.1/ /root/mt
代码升级,秒级回退
回退.png
硬链接
[root@oldboy ~]# ln /root/file /root/file_hard
-rw-r--r--. 1 root root 0 Jul 29 10:34 file1
-rw-r--r--. 2 root root 0 Jul 29 10:04 file_hard
硬链接与软链接区别
1)ln命令创建硬链接,ln -s命令创建软链接。
2)目录不能创建硬链接,并且硬链接不可以跨越分区系统。
3)目录软链接特别常用,并且软链接支持跨越分区系统。
4)硬链接文件与源文件的inode相同,软链接文件与源文件inode不 同。
5)删除软链接文件,对源文件及硬链接文件无任何影响。
6)删除文件的硬链接文件,对源文件及链接文件无任何影响。
7)删除链接文件的源文件,对硬链接无影响,会导致软链接失效。
8)删除源文件及其硬链接文件,整个文件会被真正的删除。
命令执行流程
1.当我们执行一个命令, 整个命令执行流程如下:
- 判断命令是否通过绝对路径执行
- 判断命令是否存在alias别名
- 判断用户输入的是内置命令还是外置命令
- Bash内部命令直接执行,外部命令检测是否存在缓存
- 通过$PATH变量查找命令,有执行,无报错 command not found