集团主站
欢迎来到成都达内官方网站!达内—美国上市公司 亿元级外企IT培训企业!
成都it培训哪家好
成都it培训哪家好
全国服务监督电话:15023458194  |   联系客服   |
当前位置:主页 > 培训课程 > Linux >

成都linux运维培训:Linux系统中Is命令的用法有哪些?

发布者: 成都达内     浏览次数:     发布时间:2018-12-20 10:37:02

今天小编要跟大家分享的文章是关于Linux系统中Is命令的用法有哪些。喜欢Linux的小伙伴对于Is命令肯定不会陌生,相信只要是Linux工程师,每天都会离不开这个命令,而且一天会使用个几...

  成都linux运维培训:Linux系统中Is命令的用法有哪些?

  今天小编要跟大家分享的文章是关于Linux系统中Is命令的用法有哪些。喜欢Linux的小伙伴对于Is命令肯定不会陌生,相信只要是Linux工程师,每天都会离不开这个命令,而且一天会使用个几百次。但是,除了 ls -l 以外,你还知ls的其他用法吗?今天小编就带大家看一看Linux系统中IS命令有哪些用法。

  假如我们有这样的一个文件夹,我们用tree命令查看它的目录结构:

  成都linux运维培训:Linux系统中Is命令的用法有哪些?

  用法1:列出/home/alvin/test_dir目录下所有文件及目录的详细资料

  命令:

  ls -lR /home/alvin/test_dir/

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls -lR /home/alvin/test_dir/

  /home/alvin/test_dir/:

  total 28

  -rw-rw-r-- 1 alvin alvin 37 Nov 18 09:12 atb_aux.c

  -rw-rw-r-- 1 alvin alvin 8 Nov 18 09:12 atb_can.c

  -rw-rw-r-- 1 alvin alvin 24 Nov 18 09:12 atb_orch.c

  -rw-rw-r-- 1 alvin alvin 5 Nov 18 09:12 atb_ota.c

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 include

  -rw-rw-r-- 1 alvin alvin 0 Nov 18 09:12 Makefile

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 output

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 src

  /home/alvin/test_dir/include:

  total 0

  -rw-rw-r-- 1 alvin alvin 0 Nov 18 09:12 a.h

  -rw-rw-r-- 1 alvin alvin 0 Nov 18 09:12 b.h

  -rw-rw-r-- 1 alvin alvin 0 Nov 18 09:12 c.h

  /home/alvin/test_dir/output:

  total 0

  -rwxrwxr-x 1 alvin alvin 0 Nov 18 09:12 app

  /home/alvin/test_dir/src:

  total 0

  -rw-rw-r-- 1 alvin alvin 0 Nov 18 09:12 a.c

  -rw-rw-r-- 1 alvin alvin 0 Nov 18 09:12 b.c

  -rw-rw-r-- 1 alvin alvin 0 Nov 18 09:12 c.c

  在这里,-l 选项大家应该比较熟悉,是以列表的形式显示结果的意思。而对于 -R 选项,意思是递归处理,将指定目录下的所有文件及子目录一并处理。

  用法2:列出/home/alvin/test_dir目录下以atb开头的所有文件的详细内容

  命令:

  ls -l atb*

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls -l atb*

  -rw-rw-r-- 1 alvin alvin 37 Nov 18 09:12 atb_aux.c

  -rw-rw-r-- 1 alvin alvin 8 Nov 18 09:12 atb_can.c

  -rw-rw-r-- 1 alvin alvin 24 Nov 18 09:12 atb_orch.c

  -rw-rw-r-- 1 alvin alvin 5 Nov 18 09:12 atb_ota.c

  用法3:只列出目录下的子目录

  · 方法1:

  命令

  ls -F /home/alvin/test_dir | grep /$

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls -F /home/alvin/test_dir | grep /$

  include/

  output/

  src/

  其中:-F选项表示在每个文件名后附上一个字符以说明改文件的类型。“*”:表示可执行的普通文件;“/”:表示目录;“@”:表示符号链接;“|”:表示FIFOs;“=”:表示套接字。

  /$ 其实是一个正则表达式,表示以 / 结尾。grep /$ 表示过滤出以 / 结尾的结果,也就是子目录。

  · 方法2:

  命令:

  ls -p /home/alvin/test_dir | grep /$

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls -p | grep /$

  include/

  output/

  src/

  其中:-p 选项与 -F 选项类似,也是在每个文件名后附上一个字符以说明改文件的类型。

  · 方法3:

  命令:

  ls -l /home/alvin/test_dir | grep "^d"

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls -l /home/alvin/test_dir | grep "^d"

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 include

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 output

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 src

  其中:^d 也是一个正则表达式,表示以 d 开头。grep "^d" 表示过滤出以 d 开头的结果,而ls -l 所列出来的结果,首位如果是 d 的话,表示这个文件是个目录,这样就可以过滤出子目录了。

  · 方法4:

  命令:

  ls -d */

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls -d */

  include/ output/ src/

  其中:-d 选项表示将目录象文件一样显示,而不显示其下的文件。

  用法4:按时间顺序列出目录下的文件,越新越排后面。

  命令:

  ls -ltr

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls -lrt

  total 28

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 src

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 output

  -rw-rw-r-- 1 alvin alvin 0 Nov 18 09:12 Makefile

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 include

  -rw-rw-r-- 1 alvin alvin 5 Nov 18 09:12 atb_ota.c

  -rw-rw-r-- 1 alvin alvin 24 Nov 18 09:12 atb_orch.c

  -rw-rw-r-- 1 alvin alvin 8 Nov 18 09:12 atb_can.c

  -rw-rw-r-- 1 alvin alvin 37 Nov 18 09:12 atb_aux.c

  其中:-t 选项表示以文件修改时间排序,越新的越靠前。-r 选项表示对结果进行反向排序,二者结合的话表示以修改时间排序,越新的越靠后。

  用法5:以文件大小进行排序

  命令:

  ls -lhS

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls -lhS

  total 28K

  drwxrwxr-x 2 alvin alvin 4.0K Nov 18 09:12 include

  drwxrwxr-x 2 alvin alvin 4.0K Nov 18 09:12 output

  drwxrwxr-x 2 alvin alvin 4.0K Nov 18 09:12 src

  -rw-rw-r-- 1 alvin alvin 37 Nov 18 09:12 atb_aux.c

  -rw-rw-r-- 1 alvin alvin 24 Nov 18 09:12 atb_orch.c

  -rw-rw-r-- 1 alvin alvin 8 Nov 18 09:12 atb_can.c

  -rw-rw-r-- 1 alvin alvin 5 Nov 18 09:12 atb_ota.c

  -rw-rw-r-- 1 alvin alvin 0 Nov 18 09:12 Makefile

  其中:-h 选项表示以可读选项显示,否则文件大小是默认以字节数显示,比如:4873字节,你知道是多少吗?加了 -h 选项系统就帮你换算成以k或者其它单位的结果。

  -S 选项表示以文件大小进行排序,文件越大越靠前。想要文件小者靠前的话,加个 -r 选项就行。

  用法6:统计当前目录下的文件数和目录数

  · 统计文件数:

  命令:

  ls -l | grep "^-" | wc -l

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls -l | grep "^-" | wc -l

  5

  其中:^- 表示以 - 开头,即普通文件,ls -l | grep "^-" 过滤出普通文件,再用 wc -l统计过滤出的普通文件的个数。

  · 统计目录数:

  命令:

  ls -l | grep "^d" | wc -l

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls -l | grep "^d" | wc -l

  3

  其中:^d 表示以 d 开头,即目录,ls -l | grep "^d" 过滤出目录,再用 wc -l 统计过滤出的目录的个数。

  用法7:列出所有文件的绝对路径

  命令:

  ls | sed "s:^:`pwd`/:"

  结果:

  [alvin@VM_0_16_centos test_dir]$ ls | sed "s:^:`pwd`/:"

  /home/alvin/test_dir/atb_aux.c

  /home/alvin/test_dir/atb_can.c

  /home/alvin/test_dir/atb_orch.c

  /home/alvin/test_dir/atb_ota.c

  /home/alvin/test_dir/include

  /home/alvin/test_dir/Makefile

  /home/alvin/test_dir/output

  /home/alvin/test_dir/src

  其中:sed "s:^:`pwd`/:" 表示在行首增加`pwd`(即文件所在路径),与文件名组合成绝对路径。

  用法8:列出当前目录下的所有文件(包括隐藏文件)的绝对路径, 对目录不做递归

  在上一个用法里,对于隐藏文件(即以 . 开头的文件)是不作处理的,如果我们需要对隐藏文件也作处理的话,就需要使用下面这个命令:

  find $PWD -maxdepth 1 | xargs ls -ld

  结果:

  [alvin@VM_0_16_centos test_dir]$ find $PWD -maxdepth 1 | xargs ls -ld

  drwxrwxr-x 5 alvin alvin 4096 Nov 18 17:30 /home/alvin/test_dir

  -rw-rw-r-- 1 alvin alvin 37 Nov 18 09:12 /home/alvin/test_dir/atb_aux.c

  -rw-rw-r-- 1 alvin alvin 8 Nov 18 09:12 /home/alvin/test_dir/atb_can.c

  -rw-rw-r-- 1 alvin alvin 24 Nov 18 09:12 /home/alvin/test_dir/atb_orch.c

  -rw-rw-r-- 1 alvin alvin 5 Nov 18 09:12 /home/alvin/test_dir/atb_ota.c

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 /home/alvin/test_dir/include

  -rw-rw-r-- 1 alvin alvin 0 Nov 18 09:12 /home/alvin/test_dir/Makefile

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 /home/alvin/test_dir/output

  drwxrwxr-x 2 alvin alvin 4096 Nov 18 09:12 /home/alvin/test_dir/src

  其中:find $PWD -maxdepth 1 限定了在当前层级(即不递归),再对find结果传递给 ls -ld 作参数,这样就将当前目录下的所有文件补齐了所在路径。

  以上就是小编今天为大家分享的关于Linux系统中Is命令的用法有哪些?的文章,希望本篇文章能够对正在从事Linux工作的你有所帮助,想要了解更多Linux相关知识记得关注成都达内Linux培训官网哦!

(责任编辑:范老师)
最新开班
  • 成都Java培训班
    免费试听名额发放中...
  • 成都C++培训班
    免费试听名额发放中...
  • 成都PHP培训班
    免费试听名额发放中...
  • 成都网络工程培训班
    免费试听名额发放中...
  • 成都Unity3D培训班
    免费试听名额发放中...
  • 成都大数据培训班
    免费试听名额发放中...
  • 成都uid培训班
    免费试听名额发放中...
  • 成都会计培训班
    免费试听名额发放中...
  • 成都Python培训班
    免费试听名额发放中...
  • 成都嵌入式培训班
    免费试听名额发放中...
  • 成都web培训班
    免费试听名额发放中...
  • 成都软件测试培训班
    免费试听名额发放中...
在线留言
提交

校区地址:绵阳市涪城区临园路东段68号富临大都会7栋3单元9层12号

联系电话:15023458194

公交路线:富乐路口凯德广场(10路;29路;3路;15路;11路;15a路;71路)

校区地址:成都市锦江区东大街紫东楼端35号明宇金融广场19楼1906室

联系电话:15023458194

公交路线:芷泉街(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:成都市高新区奥克斯广场蜀锦路209号一楼商铺

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

校区地址:成都锦江区东大街芷泉街229号东方广场C座3楼303

联系电话:15023458194

公交路线:芷泉街(188路;115路;515路;236路;505路;501路;84路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:成都市武侯区佳灵路3号红牌楼广场2号写字楼11楼1115号

联系电话:15023458194

公交路线:红牌楼东(11路;92路;100路;111路;139路;g28路;快速公交K1/K2) 地铁路线:红牌楼站(地铁3号线)

校区地址:成都市锦江区红星路二段70号四川日报大厦502-2

联系电话:15023458194

公交路线:市二医院站(6路;49路;102路;5路;37路;g92路;) 地铁路线:地铁市二医院(地铁3号线)

校区地址:成都市锦江区东大街芷泉段229号东方广场C座16层

联系电话:15023458194

公交路线:芷泉街(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:四川省成都市武侯区高新科技孵化园9号园区E座7楼

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

校区地址:成都市人民南路一段86号“城市之心”大厦26楼

联系电话:15023458194

公交路线:成都市人民南路(6路;14路;42路;72路;76路;1010路;)

校区地址:成都市高新区奥克斯广场B座1708

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

了解达内动态
关注成都达内教育公众号

首页 | 关于达内 | 课程中心 | 专家师资 | 视频教程 | 学员空间 | 校企合作 | 新闻资讯 | 就业指导 | 网站地图

2016-2025 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56