在linux下使用“ls -l”或者“ls -al”或者“ll”命令查看文件及目录详情时,shell中会显示出好几列的信息。平时也没怎么注意过,今天忽然心血来潮想了解一下,于是整理了这篇博客,以供参考:

首先给出一张典型的显示结果:

下面对其中的每一列进行详细的分析:

一、文件类型

表示该文件的类型:

“-”表示普通文件;
“d”表示目录;
“l”表示链接文件;
“p”表示管理文件;
“b”表示块设备文件;
“c”表示字符设备文件;
“s”表示套接字文件;
二、文件属性

以back_init文件为例,其属性可分为三段:[rwx][rwx][r-x],其中:

第一段表示文件创建者/所有者对该文件所具有的权限,第二段表示创建者/所有者所在的组的其他用户所具有的权限,第三段表示其他组的其他用户所具有的权限。

r(Read,读取权限):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。
w(Write,写入权限):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
x(eXecute,执行权限):对文件而言,具有执行文件的权限;对目录来说,该用户具有进入目录的权限。
另外,这里还有2个很特殊的属性,平时不怎么常见,这里也顺带解释一下:

s或S(SUID,Set UID):可执行的文件搭配这个权限,便能得到特权,任意存取该文件的所有者能使用的全部系统资源。请注意具备SUID权限的文件,黑客经常利用这种权限,以SUID配上root帐号拥有者,无声无息地在系统中开扇后门,供日后进出使用。
t或T(Sticky):/tmp和 /var/tmp目录供所有用户暂时存取文件,亦即每位用户皆拥有完整的权限进入该目录,去浏览、删除和移动文件。
综合起来可得,对于back_init文件,其创建者/所有者具有可读可写可执行的权限,其创建者/所有者所在的组的其他用户具有可读可写可执行的权限,其他组的其他用户则具有可读可执行但不可写的权限。

三、目录/链接个数

对于目录文件,表示它的第一级子目录的个数。注意此处看到的值要减2才等于该目录下的子目录的实际个数。

比如这里的include目录下,其实是没有子目录的,所以应该是0,但是它这里却显示2,这是因为要加上.目录和..目录。在linux下,.目录表示当前目录,..目录表示上一级目录。

这也可以解释上图中第一行的.目录下的3和第二行..目录下的26。因为当前目录下有一个include目录,所以加上.目录和..目录这2个目录就等于3,所以第一行会显示3。而上一级目录共有24个目录,加上上一级目录的.目录和..目录这2个目录,所以这里的第二行显示的是26。

对于其他文件,表示指向它的链接文件的个数。

四、所有者及组

表示该文件的所有者/创建者(owner)及其所在的组(group)。

五、文件大小

如果是文件,则表示该文件的大小,单位为字节。
如果是目录,则表示该目录符所占的大小,并不表示该目录下所有文件的大小。

六、修改日期

该文件最后修改的日期时间。

七、文件名称

文件名,无需多说。

八、字体颜色

在大多数的linux shell窗口中,还能用颜色来区分不同文件的属性:

灰白色表示普通文件;
亮绿色表示可执行文件;
亮红色表示压缩文件;
灰蓝色表示目录;
亮蓝色表示链接文件;
亮黄色表示设备文件;
当然,这里需要使用系统缺省的配色方案。如果你自定义了shell的配色方案,则有可能与上面的定义不一致。

最后还要说明一点的是,可以看到上述的图片中,back_init文件的后面还带了一个星号(*),这也是linux系统下用于标记可执行文件的另外一种方式。也就是说,凡是文件名后面带了一个星号(*)的,都是在说明这是一个可执行文件。

linux下ls -l命令(即ll命令)查看文件的显示结果分析的更多相关文章

  1. linux下 ls -l 命令显示结果每一列代表什么意思

    第一个栏位,表示文件的属性.Linux的文件基本上分为三个属性:可读(r),可写(w),可执行(x).但是这里有十个格子可以添(具体程序实现时,实际上是十个bit位).第一个小格是特殊表示格,表示目录 ...

  2. Linux 下 ls -l 命令执行显示结果的每一列含义【转载】

    转自:zhuoya_的博客 原文地址>>https://blog.csdn.net/zhuoya_/article/details/77418413

  3. Linux下ls命令显示符号链接权限为777的探索

    Linux下ls命令显示符号链接权限为777的探索 --深入ls.链接.文件系统与权限 一.摘要 ls是Linux和Unix下最常使用的命令之一,主要用来列举目录下的文件信息,-l参数允许查看当前目录 ...

  4. Linux下 ls 命令的高级用法8例

    Linux下 ls 命令的高级用法8例 在Linux下,ls这个命令大家肯定太熟悉了,良许相信只要是Linux工程师,每天都会离不开这个命令,而且一天会使用个几百次.但是,除了 ls -l 以外,你还 ...

  5. 构建LINUX下的入侵检测系统——LIDS 系统管理命令--vlock

    构建LINUX下的入侵检测系统——LIDS   系统管理命令--vlock http://blog.chinaunix.net/uid-306663-id-2440200.html LIDS官方网站: ...

  6. Linux下如何保持gnome-terminal窗口执行命令后停留而不立刻关闭(gnome-terminal -x)

    Linux下如何保持gnome-terminal窗口执行命令后停留而不立刻关闭(gnome-terminal -x) 转自:http://jakfruit.blog.163.com/blog/stat ...

  7. Linux下df与du两个命令的差别?

    Linux下df与du两个命令的差别? 一.df显示文件系统的使用情况,与du比較,就是更全盘化. 最经常使用的就是 df -T,显示文件系统的使用情况并显示文件系统的类型. 举比例如以下: [roo ...

  8. Linux下lshw,lsscsi,lscpu,lsusb,lsblk硬件查看命令

    Linux下lshw,lsscsi,lscpu,lsusb,lsblk硬件查看命令 2016-12-14 何敏杰 1条评论 544次浏览   注意:如有提示命令找不到command not found ...

  9. linux下使用script和scriptreplay对命令行操作进行录像

    转自:linux下用script和scriptreplay对命令行操作录像 在Linux中可以使用script命令来记录命令行的操作过程,并使用scriptreplay命令对命令操作进行回放,操作步骤 ...

随机推荐

  1. Adams/Car与Simulink联合仿真方法

    必须是Assembly装配体才行,并支持仿真设置.这里使用MDI_Demo_Vehicle模型,输出前缀为test1,输出选择files_only.然后OK输出. 生成的文件如下: 在Plant Ex ...

  2. 在UnrealEngine中用Custom节点实现径向模糊

    //input NotUse 为了开启SceneTextureLookup函数而连接的节点,但是不参与逻辑 //input UV 屏幕缓存的坐标坐标 //input Strength 力度 //inp ...

  3. 如何去掉linux配置文件的注释行和空行

    1.使用grep -v "^#"  来去掉注释行,其中:-v  就是取相反的   ^# 表示以#开头的行 eg. grep -v "^#" /etc/vsftp ...

  4. [HDU1693]Eat the Trees

    Description: 给出n*m的方格,有些格子不能铺线,其它格子必须铺,可以形成多个闭合回路.问有多少种铺法? Hint: \(n,m<=12\) Solution: 与原来单回路那题转移 ...

  5. BZOJ3536 : [Usaco2014 Open]Cow Optics

    枚举最后光线射到终点的方向,求出从起点出发以及从终点出发的光路,扫描线+树状数组统计交点个数即可. 注意当光路成环时,对应的两个方向应该只算一次. 时间复杂度$O(n\log n)$. #includ ...

  6. JS内存管理

    背景: 分配给Web浏览器的内存通常比分配给电脑桌面的内存少,因为担心运行JS的网页耗尽全部系统内存而导致系统崩溃 内存限制问题不仅影响给变量分配内存,还会影响调用栈以及在一个线程中能够同时执行的语句 ...

  7. yii动态配置International(Yii::t())

    Yii:t()的动态配置 \Yii::$app->i18n->translations['categoryName*'] = [ 'class' => 'yii\i18n\PhpMe ...

  8. Django深度剖析

    启动过程 通过命令行执行 python manage.py runserver 127.0.0.1:8000 启动Django服务 manage.py模块获取到命令行参数manage.py runse ...

  9. Install latest git on CentOS 6/7

    Assuming you have sudo/root permission. Try rpmforge-extras first. yum --disablerepo=base,updates -- ...

  10. 【高精度】高精度分数[c++]

    [高精度]高精度分数 时间限制: 1 Sec 内存限制: 64 MB 题目描述 "人无远虑,必有近忧"是修罗王一直以来恪守的信条,为了以防万一,他在很久以前就将<魔法宝典&g ...