扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
linux 中 ll 命令显示 的大小 是以“字节”为单位的。
创新互联公司从2013年开始,先为上蔡等服务建站,上蔡等地企业,进行企业商务咨询服务。为上蔡企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
ll显示的是字节,可以使用-h参数来提高文件大小的可读性,另外ll不是命令,是ls -l的别名
ls -al 是以字节单位显示文件或者文件夹大小;
字节b,千字节kb,
1G=1024M=1024*1024KB=1024*1024*1024B
通常会加参数h来直观显示大小,会使用G、M等来显示大文件
ls -alh
linux下命令“ll”是“ls
-l"的别名。别名相当于windows里的快捷方式。
所以"ll"和“ls
-l”的功能是相同的。
所以"ll"和"ls"的区别其实是“ls”和"ls
-l"的区别。
”ls“是显示当前目录下文件,”ls
-l“是显示当前目录下文件详细信息。
楼上说错了..
按照ls的man文档说明 紧跟权限后的数字用于描述链接数
详细的解释就是 权限后面跟着的数字就是表示这个文件和目录有多少个硬链接
# ls -il
606250 -rw-r--r-- 1 root root 8791 Sep 20 16:43 commands
606223 drwxr-xr-x 36 root root 4096 Jun 21 12:59 test
606274 lrwxrwxrwx 1 root root 8 Sep 30 17:00 test1 - testfile
606292 lrwxrwxrwx 1 root root 8 Sep 30 17:00 test2 - testfile
606262 -rw-r--r-- 4 root root 0 Sep 30 16:59 test3
606262 -rw-r--r-- 4 root root 0 Sep 30 16:59 test4
606262 -rw-r--r-- 4 root root 0 Sep 30 16:59 test5
606299 lrwxrwxrwx 1 root root 8 Sep 30 17:06 test6 - testfile
606262 -rw-r--r-- 4 root root 0 Sep 30 16:59 testfile
上例中,以ls -il输出 第一列是文件的inode
文件testfile一共有4个硬链接 这是包含本身的,也就是说 除了testfile自身 还有三个硬链接链接到文件的inode 所以此列显示为4 这点可以从inode的比较看出来 ,test3 test4 test5 是testfile的硬链接
目录test 其目录一共含56个硬链接, 所以显示出56
一个文件最少有一个硬链接。
一个目录(比如是/home/dir)则至少有2个硬链接,一个是目录本身(/home/dir)的入口,这个/home/dir目录的硬链接".."相当于该目录的父目录/home的".",另一个是目录内部的 ".",是在目录内表示本目录的入口。所以在目录内每多一个目录,就会多一个硬链接,因为子目录的".." 表示的父目录的入口相当于父目录的"."。
具体的 自己创建一个文件 ln几次就看出笑过了
符号链接 不增加链接数 即 ln -s 创建的链接对那个数字没影响
ls -lrt 表示按修改时间倒序列出当前工作目录下的文件。而ll等价于ls -l,表示按名称顺序正序列出当前工作目录下的文件。
解析:ls表示列出当前目录下的文件。后面的 -lrt 是这个命令的一些选项。命令的选项相当于一个开关,可以开关特定的功能。-lrt实际上是 "-l -r -t" 这三个选项的缩写。
ls -l 这个命令打开了 -l 选项,等价于ll。-l 表示开启长列表输出,打开了就会输出文件权限、引用计数、所有者、所属组、文件大小、修改日期和文件名称这些详细的信息。
-t 这个选项表示按修改时间正序输出列表。最新的文件会排在上面。从图中可以看到,最后创建的3.txt被排在第一位。
-r 表示输出倒序。ls -lrt 组合起来就是按修改时间倒序输出,最新修改的文件会被排在下面(没有加-r的时候是在排在上面)
扩展资料:
ll是ls -l的别名。在linux发行版中往往可以用alias定义别名。只是因为ls -l使用频繁,所以很多系统默认定义了ll这个别名。
家目录下的".bashrc"文件记录了第一次启动bash需要执行的脚本。打开".bashrc",可以看到默认安装的系统帮我们定义了ll这个别名。ll这时候和ls -l是等价的。
其次,在linux系统中可通过man ls查看ls命令的用户文档。文档中对ls命令的解释非常详细。
其他命令也可以通过man+命令名的方式来查看文档。
参考资料:百度百科-Linux中ls命令
find 命令的基本结构如下:
find 命令手册 : man find
find 命令中的 -name 选项可以根据文件名称进行检索( 区分大小写 )。如需要忽略文件名中的大小写,可以使用 -iname 选项。
-name 和 -iname 两个选项都支持 wildcards 。如:
例1:查找 /usr 目录下所有文件名以 .txt 结尾的文件
例2:查找 /usr 目录下所有文件名刚好为 4 个字符的文件
例3:查以大写字母开头的文件
例4:查以两个小写字母和两个数字开头的txt文件
类似的还有:
-lname -ilname
-path -ipath
-regx -iregx
有些时候,你需要在搜索时匹配某个文件或目录的 完整路径 ,而不仅仅是匹配文件名。可以使用 -path 或 -ipath 选项。
例1:如查找 /usr 下所有文件名以 .txt 结尾的文件或目录,且该文件的父目录必须是 src 。可以使用以下命令:
例2:在当前目录除aa之外的子目录内搜索 txt文件
例3:在当前目录,不再子目录中,查找txt文件
如果只想搜索得到文件 或 目录,即不想它们同时出现在结果中。可以使用 -type 选项指定文件类型。
-type 选项最常用的参数如下:
例:检索 /usr 下所有文件名以 python 开头的目录
find 命令支持 -empty 选项用来检索 为空 的文件或目录。空文件即文件里没有任何内容,空目录即目录中没有任何文件或子目录。
例:检索用户主目录下所有的空目录
find 命令也允许用户对当前的匹配条件进行 “反义” (类似于 逻辑非 操作)。
如需要检索 /usr 下所有文件名 不 以 .txt 为后缀的文件。可以使用以下命令:
也可以“翻转”任何其他的筛选条件,如:检索 /usr 下所有内容不为空的文件
为了检索归属于特定用户的文件或目录,可以使用 -user 选项。
例:检索根目录下所有属主为 starky 的文件
类似于 -user 选项, -group 选项则可以根据文件或目录的 属组 进行检索。
有些时候,需要根据文件创建或修改的时间进行检索。
Linux 系统中,与文件相关联的时间参数有以下三种:
与此对应的是 find 命令中的 -mtime , -atime 和 -ctime 三个选项。
这三个选项的使用遵循以下示例中的规则:
检索 /usr 下两天前被修改过的文件
如果觉得 -mtime 等选项以 天 为单位时间有点长,还可以使用 -mmin , -amin , -cmin 三个选项。
查找比 aa.txt 新 的文件
查找比 aa.txt 旧 的文件
查找比aa.txt新,比bb.txt旧的文件
-size 选项允许用户通过文件大小进行搜索(只适用于文件,目录没有大小……)。
表示文件大小的单位由以下字符组成:
另外,还可以使用 + 或 - 符号表示 大于 或 小于 当前条件。
检索文件大小高于 1 GB 的文件
find 命令可以使用 -perm 选项以文件权限为依据进行搜索。
9.1使用符号形式
例1:如需要检索 /usr 目录下权限为 rwxr-xr-x 的文件,可以使用以下命令:
例2:搜索 /usr 目录下所有权限为 r-xr-xr-x (即系统中的所有用户都只有读写权限)的文件和目录,可以使用以下命令:
很多时候,我们只想匹配文件权限的一个 子集 。比如,检索可以直接被任何用户执行的文件,即只关心文件的执行权限,而不用管其读写权限是什么。
上述的需求可以通过以下命令实现:
其中 a=x 前面的 / 符号即用来表示只匹配权限的某个子集(执行权限),而不用关心其他权限的具体设置。
9.2使用数字形式
例如:搜索 /usr 目录下权限为 644 (即 rwxr-xr-x )的文件
find 命令默认是以 递归 的方式检索项目的,这有时候会导致得到的结果数量非常巨大。可以使用 -maxdepth 限制 find 命令递归的层数。
例如:搜索时向下递归的层数最大为 3
在之前的例子中有出现多个搜索条件的 组合 以及对某个搜索条件的 反转 。
实际上 find 命令支持 “and” 和 “or” 两种逻辑运算,对应的命令选项分别是 -a 和 -o 。通过这两个选项可以对搜索条件进行更复杂的组合。
此外还可以使用 小括号 对搜索条件进行 分组 。注意 find 命令中的小括号常需要用 单引号 包裹起来。因小括号在 Shell 中有特殊的含义。
如检索 /usr 下文件名以 python 开头且类型为目录的文件
该命令等同于:
更复杂的组合形式如:
例4:在除dir0及子目录以外的目录下查找txt后缀文件
说明:-a 应该是and的缩写,意思是逻辑运算符‘与’(); -o应该是or的缩写,意思是逻辑运算符‘或’(||), -not 表示非.
命令行的意思是:如果目录dir0存在(即-a左边为真),则求-prune的值,-prune 返回真,‘与’逻辑表达式为真(即-path './dir0*' -a -prune 为真),find命令将在除这个目录以外的目录下查找txt后缀文件并打印出来;如果目录dir0不存在(即-a左边为假),则不求值-prune ,‘与’逻辑表达式为假,则在当前目录下查找所有txt后缀文件。
-delete 选项可以用来删除搜索到的文件和目录。
例如:删除 home 目录下所有的空目录:
-exec 选项可以对搜索到的结果执行执行该参数所给出的shell命令。形式为 command {} \; ,注意{}与\;之间有空格 。每当 find 命令检索到一个符合条件的文件,会使用其完整路径取代命令中的 {} ,然后执行 -exec 后面的命令一次。
例1:如需要将 home 目录下所有的 MP3 音频文件复制到移动存储设备(假设路径是 /media/MyDrive ),可使用下面的命令:
其中的 大括号 ( {} )作为检索到的文件的 占位符 ,而分号( ; )作为命令结束的标志。因为分号是 Shell 中有特殊含义的符号,所以需要使用单引号括起来或前面加上转义符 \ 。
例2:查看当前目录下的所有普通文件,并在 - exec 选项中使用 ls -l 命令将它们列出
例3:在多个文件中检索某个指定的字符串。如在用户主目录下的所有文件中检索字符串 hello ,可以使用如下命令:
创建 Gzip 格式的压缩文件的命令为:
现在假设需要将用户主目录下所有的 MP3 文件添加到压缩包 music.tar.gz 中,直观的感觉是,其命令应为如下形式:
实际情况是,这样得到的 music.tar.gz 其实只包含一个 MP3 文件。原因是 find 命令 每次 发现一个音频文件,都会再执行一次 -exec 选项后面的压缩命令。导致先前生成的压缩包被覆盖。
可以先让 find 命令检索出所有符合条件的音频文件,再将得到的 文件列表 传递给后面的压缩命令。完整的命令如下:
如果想浏览搜索到的文件(目录)的详细信息(如权限和大小等),可以直接使用 -ls 选项。
例如:浏览所有 1G 以上大小的文件的详细信息
与exec作用相同,区别在于,在执行命令之前,都会给出提示,让用户确认是否执行
与 exec 作用相同 ,起承接作用。区别在于 |xargs 主要用于承接删除操作 ,而 -exec 都可用 如复制、移动、重命名等
例1:查找以ap或may开头的文件
例2:查硬连接数大于2的文件或目录
例3:查找含特定字符串的文件。查找当前目录下含有"the string you want find…"字符串的文件:
例4:从根目录开始查tmpfile,一旦查到马上删除
例5:如何用find查找某一天更改的文件?可以使用这一行命令来实现:
A Guide to the Linux “Find” Command
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流