file
作用:查看文件的类型
常用选项:
-b 列出文件辨识结果时,不显示文件名称
-f 列出文件中文件名的文件类型(相当于把文件或目录位置写在一个文件里,批量查看,f后要紧跟文件)
实例:
[[email protected] ~]# file /etc /etc: directory [[email protected] ~]# file /etc/passwd /etc/passwd: ASCII text [[email protected] ~]# file /dev/sda /dev/sda: block special [[email protected] ~]# file -b /dev/sda block special [[email protected] ~]# [[email protected] ~]# cat 1 /etc /etc/passwd /dev/sda [[email protected] ~]# file -f 1 /etc: directory /etc/passwd: ASCII text /dev/sda: block special [[email protected] ~]# file -bf 1 directory ASCII text block special [[email protected] ~]#
which
作用: 在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果
实例:
[[email protected] ~]# which ls alias ls=‘ls --color=auto‘ /bin/ls [[email protected] ~]# which pwd /bin/pwd [[email protected] ~]# which cp alias cp=‘cp -i‘ /bin/cp [[email protected] ~]# which cd /usr/bin/which: no cd in (/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin) [[email protected] ~]#
因为 cd 是bash 内建的命令! 但是 which 默认是找 PATH 内所规范的目录,所以当然一定找不到的
wc
作用:统计文件相关信息
常用选项:
-l 统计行数
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串
-c 统计字节数
-L 打印最长行的长度
实例:
[[email protected] ~]# wc -l /etc/passwd 37 /etc/passwd #37行 [[email protected] ~]# wc -w /etc/passwd 57 /etc/passwd #57个字 [[email protected] ~]# wc -c /etc/passwd 1752 /etc/passwd #1752个字节 [[email protected] ~]# wc /etc/passwd 37 57 1752 /etc/passwd #默认显示行数、字数、总字节数 [[email protected] ~]# wc -L /etc/passwd 79 /etc/passwd #最长的一行有79个字节 [[email protected] ~]#
ln
作用:为某一个文件在另外一个位置建立一个同步的链接
注释:
链接又可分为两种 : 硬链接(hard link)与软链接(symbolic link),硬链接的意思是一个档案可以有多个名称,
而软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。
硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。
软链接:
1.软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
2.软链接可以 跨文件系统 ,硬链接不可以
3.软链接可以对一个不存在的文件名进行链接
4.软链接可以对目录进行链接
硬链接:
1.硬链接,以文件副本的形式存在。但不占用实际空间。
2.不允许给目录创建硬链接
3.硬链接只有在同一个文件系统中才能创建
这里有两点要注意:
第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;
第二,ln的链接又分软链接和硬链接两种,软链接就是ln –s 源文件 目标文件,它只会在你选定的位置上生成一个文件的镜像
,不会占用磁盘空间,硬链接 ln 源文件 目标文件,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,
无论是软链接还是硬链接,文件都保持同步变化。
ln指令用在链接文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则会把前面指定的所有文件或目录复制到该目录中。
若同时指定多个文件或目录,且最后的目的地并非是一个已存在的目录,则会出现错误信息。
常用选项:
-s 软连接(符号链接)
实例:
[[email protected] ~]# echo "123">/tmp/hi [[email protected] ~]# ln -s /tmp/hi hi_solink [[email protected] ~]# ll total 0 lrwxrwxrwx. 1 root root 7 Mar 30 13:04 hi_solink -> /tmp/hi [[email protected] ~]# cat hi_solink 123 [[email protected] ~]# echo 321 >> hi_solink [[email protected] ~]# cat hi_solink /tmp/hi 123 321 123 321 [[email protected] ~]# rm -rf hi_solink [[email protected] ~]# cat /tmp/hi 123 321 [[email protected] ~]# [[email protected] ~]# echo "hardlink" > /tmp/hello [[email protected] ~]# ln /tmp/hello hd_link [[email protected] ~]# ll total 4 -rw-r--r--. 2 root root 9 Mar 30 13:06 hd_link [[email protected] ~]# echo "plus" >> hd_link [[email protected] ~]# cat hd_link /tmp/hello hardlink plus hardlink plus [[email protected] ~]# rm -rf hd_link [[email protected] ~]# cat /tmp/hello hardlink plus [[email protected] ~]#
link 源文件 目标文件
link只可以做硬链接