10.16 ln软硬链接的创建等
ln
make links between files
无参数 创建硬链接
-s 创建软连接
ln option 源文件 目标文件 #相反的: tar 目标文件 源文件
[root@wen test]# ln person.txt person.hard
[root@wen test]# ll -i
130655 -rw-r--r-- 2 root root 71 10月 16 20:52 person.hard
130655 -rw-r--r-- 2 root root 71 10月 16 20:52 person.txt
inode一样但不是同一个文件,因为不在同一个磁盘上,必须同一个磁盘上才是同一个文件
[root@wen test]# ll -hid /sys /proc
1 dr-xr-xr-x 96 root root 0 10月 16 12:58 /proc #内存中的一个文件映射文件系统形成的一个目录,不存储在磁盘上
1 drwxr-xr-x 13 root root 0 10月 16 12:58 /sys #磁盘上
[root@wen test]# ll -ih
总用量 16K
130655 -rw-r--r-- 2 root root 71 10月 16 20:52 person.hard
145167 lrwxrwxrwx 1 root root 10 10月 16 21:02 person.soft -> person.txt
130655 -rw-r--r-- 2 root root 71 10月 16 20:52 person.txt
软硬链接的特点
硬链接用的较少
软连接用在软件安装升级上,平滑升级,将原来连接文件移走创建新的
----------------------------
readlink
查看符号链接(软连接)的源文件
[root@wen test]# readlink person.soft
person.txt
[root@wen test]# readlink person.hard
[root@wen test]# readlink /etc/init.d
rc.d/init.d
[root@wen test]# ll /etc/init.d
lrwxrwxrwx. 1 root root 11 8月 30 05:46 /etc/init.d -> rc.d/init.d
----------------------
rename 重命名
rename from to file...
from 代表需要替换或处理的字符 文件的一部分,包括文件的扩展名
to 同把前面from代表的内容替换为to代表的内容即重命名处理后的结果
file
[root@wen test1]# ls
stu_102999_1.jpg stu_102999_3.jpg stu_102999_5.jpg
stu_102999_2.jpg stu_102999_4.jpg
[root@wen test1]# rename "_102999" "" *
[root@wen test1]# ls
stu_1.jpg stu_2.jpg stu_3.jpg stu_4.jpg stu_5.jpg
[root@wen test1]# rename "jpg" "png" *
[root@wen test1]# ls
stu_1.png stu_2.png stu_3.png stu_4.png stu_5.png
------------------
basename
用法:basename 名称 [后缀]
或:basename 选项
去掉前导的目录部分后打印"名称"。
如果指定的话,还会去掉尾随的"后缀"。
[root@wen test1]# basename /data/test/test1/stu_1.jpg
stu_1.jpg
[root@wen test1]# basename /data/test/test1/stu_1.jpg .jpg
stu_1
dirname
[root@wen test]# dirname /data/test/test1/stu_1.jpg
/data/test/test1
--------------------
file 查看文件类型
[root@wen data]# file person.txt
person.txt: ASCII text
[root@wen test]# file person.soft
person.soft: symbolic link to `person.txt'
[root@wen test]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped #二进制
----------------
md5sum 计算和校验文件的md5值
[root@wen test]# md5sum person.hard person.txt
fa9b69da166add478aed217788bc94d5 person.hard
fa9b69da166add478aed217788bc94d5 person.txt
[root@wen test]# md5sum person.soft
fa9b69da166add478aed217788bc94d5 person.soft
[root@wen test]# md5sum person.hard > md5.log
[root@wen test]# cat md5.log
fa9b69da166add478aed217788bc94d5 person.hard
[root@wen test]# md5sum -c md5.log
person.hard: OK
[root@wen test]# echo "111" >> person.txt
[root@wen test]# md5sum -c md5.log
person.hard: FAILED
md5sum: WARNING: 1 of 1 computed checksum did NOT match