Linuxls查看⽬录⽂件命令集锦
Linux Shell ls查看⽬录汇总
声明与简介
本⽂的数据来⾃⽹络,部分代码也有所参照,这⾥做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理。本⽂主要介绍Linux的命令ls的使⽤。
ls命令⽤于查看当前操作系统下的⽬录、⽂件信息。
LS常见命令集锦
查看指定⽬录的信息
#查看指定⽬录,默认是当前⽬录
ls /data/mysql/
ls
ls .
以区分⽬录、⽂件形式查看
#以区分⽬录、⽂件⽅式
ls –F /data/mysql
注: 1 这⾥⽂件以后缀 “/”显⽰,可执⾏⽂件以”*”
2 这⾥的F约等价于字母Format
以长信息展⽰⽬录
#以长信息,详细信息⽅式展⽰
ls -l
主要展⽰以下信息:
1. ⽂件类型,D代表⽬录(Directory)、-代表⽂件、c代表字符块(character device)、b代表块设备(block device)。
2. ⽂件类型,⽐如截图⾥的anaconda-ks.cfg的⽂件权限是rw-即可读可写不可执⾏。⽂件的权限有读、写、执⾏三种,⽂件权限对应⾯
向三类⽤户(⾃⼰、所在组、其它组)。权限有时也以数字形式表现,其中R对应4,W对应2,X对照1,针对某类⽤户其权限是三类的总和,所以anaconda-ks.cfg的权限是600
3. ⽂件硬链接数
4. ⽂件所属⽤户名
5. ⽂件所属组名
6. ⽂件最新的修改时间
7. ⽂件或⽬录名
缩略⽅式查看所有⽂件(含隐藏⽂件)
隐藏⽂件多数为配置⽂件,以.开头,⽐如这⾥的.bash_profile、.bashrc环境变量配置⽂件;.kettle是KETTLE的配置⽂件。
# 显⽰所有⽂件(含隐藏)
ls –a /root
递归式遍历⽂件
#递归式查看⽂件和⽬录
ls –F –R
#也可以写成 ls –FR
这⾥的R参数是以递归式查看指定⽂件信息,即如果有的⽂件夹有⼦⽂件(夹)则会遍历完全。
这⾥的参数R等价于recurcive
模糊匹配
#模糊匹配⽅式查看⽂件、⽬录
ls -l sh.t?t
ls -l sh*
这⾥?是⼀个字符模糊匹配,*则是可以匹配多个字符。
中括号匹配
情景1:中括号多固定字符匹配,⽐如如下命令会匹配到txt和tgt。
#多字符组合匹配
ls -l sh.t[gx]t
情景2:中括号多固定字符匹配,⽐如如下命令会匹配到txt和tgt。
#以正则表达式⽅式匹配
linux查看当前文件夹内容ls -l sh.t[a-zA-Z]t
情景3:反向匹配,⽐如不含字符“g”的⽂件,则可以
#反向匹配
ls -l sh.t[!g]t
合并⽬录、⽂件名
#这⾥合并时以逗号作为分隔符。
ls -m .
#shelldir, sh.Tgt, sh.txt
引号包裹⽂件名
#以引号包裹⽅式展⽰
ls -Q .
#"shelldir" "sh.Tgt" "sh.txt"
查看⽬录时仅显⽰⽤户及组ID
ls -n .
#总⽤量 8
#drwxr-xr-x 2 0 0 23 5⽉ 14 16:19 shelldir
#-rw-r--r-- 1 0 0 7 5⽉ 14 16:26 sh.Tgt
#-rw-r--r-- 1 0 0 12 5⽉ 14 16:
注:这⾥的0即是root的⽤户和组ID。可通过如下命令验证:
#查看root的⽤户信息
cat /etc/passwd | grep root
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
指定时间格式显⽰⽂件信息
#指定以年⽉⽇时分秒⽅式展⽰
ls -l --time-style='+%Y/%m/%d %H:%M:%S' .
#总⽤量 8
#drwxr-xr-x 2 root root 23 2021/05/14 16:19:31 shelldir
#-rw-r--r-- 1 root root 7 2021/05/14 16:26:32 sh.Tgt
#-rw-r--r-- 1 root root 12 2021/05/14 16:16:
其它⼏种内置时间格式参数为full-iso、long-iso、iso、locale,以下以full-iso为例。
其中full-iso格式为年-⽉-⽇ 时-分-秒.毫秒 时区。⽐如2021-05-14 16:19:31.574107937 +0800 Long-iso格式为年-⽉-⽇ 时-分,⽐如2021-05-14 16:19
Iso格式为⽉-⽇ 时-分,⽐如05-14 16:19
locale格式为依赖于系统的语⾔环境,当前为中⽂(zh_CN.utf8),所以显⽰效果为:5⽉ 14 16:19。
[root@host_128 shellscrips]# ls -l --time-style=full-iso .
总⽤量 8
drwxr-xr-x 2 root root 23 2021-05-14 16:19:31.574107937 +0800 shelldir
-rw-r--r-- 1 root root 7 2021-05-14 16:26:32.840134427 +0800 sh.Tgt
-rw-r--r-- 1 root root 12 2021-05-14 16:16:55.545098126 +
这⾥显⽰的是时间格式⾥含了时区信息,当前CentOS系统是东⼋区(+0800)。
以⽂件⼤⼩显⽰
#以⽂件⼤⼩排序,这⾥以⽂件⼤的排在前。
ls -S -l .
通过时间类型查看
这⾥有三个参数mtime:modification time,即⽂件内容修改时。
ctime: status change time 即⽂件的状态(权限和属性)变化时
atime : access time ⽂件被访问时,⽐如cat、more、ls等时
注:针对atime的说明:
这⾥特别注意,不是每次访问时该时间都会更新,⽽是⽂件状态或内容修改后最近的⼀次时间。
案例说明:
1 先修改⽂件sh.txt,查看通过修改时间查看
2 再修改⽂件的读写权限,然后通过状态时间查看
3 通过cat访问⽂件,然后通过访问时间查看
4 再次cat访问⽂件,然后通过访问时间查看
详细见下⽂:
ll
总⽤量 8
drwxr-xr-x 2 root root 23 5⽉ 14 16:19 shelldir
-rw-r--r-- 1 root root 60 5⽉ 14 21:34 sh.Tgt
-rw-r--r-- 1 root root 24 5⽉ 14 21:
[root@host_128 shellscrips]# echo "new content" >> sh.txt [root@host_128 shellscrips]# ls -
-rw-r--r-- 1 root root 36 5⽉ 14 22:
[root@host_128 shellscrips]# chmod
[root@host_128 shellscrips]# ls -l --time=
-rwxr--r-- 1 root root 36 5⽉ 14 22:
[root@host_128 shellscrips]#
say nothing
modify now!
new content
[root@host_128 shellscrips]# ls -l --time=
-rwxr--r-- 1 root root 36 5⽉ 14 22:
[root@host_128 shellscrips]# date
2021年 05⽉ 14⽇ 星期五 22:21:05 CST
[root@host_128 shellscrips]#
say nothing
modify now!
new content
[root@host_128 shellscrips]# ls -l --time=
-rwxr--r-- 1 root root 36 5⽉ 14 22:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论