ls命令学习记录2

1.用不同的颜色显示内容

ls --color
除了使用-F选项在文件和文件夹名称后面附加特殊的符号,还可以让shell用不同的颜色显示内容,这样就能够用另一种方法把不同的内容进行分类,将它们区分开来。

$ ls --color
adblock_filters.txt   fixm3u      pix2tn.pl
addext                flash.xml   pop_login
address_book.csv      getip       procmail

下表列举了所有常见的颜色关联(但特定的Linux发行版本中这些颜色的含义可能会有所不同)。
表颜色和文件类型

颜  色含  义
默认的shell文本颜色普通文件
绿色可执行文件
蓝色目录
紫红色符号链接文件
黄色管道(FIFO)
紫红色套接字(socket)
红色压缩文件(.tar、.zip、.deb、.rpm)
紫红色图片文件(.jpg、.gif、.png、.tiff)
紫红色音频文件(.mp3、.ogg、.wav)

也可以使用dircolors命令修改这些颜色配置。
结合–color和-F选项,当前目录中有哪些类型的文件一目了然。

$ ls -F --color
adblock_filters.txt       fixm3u*        pix2tn.pl*
addext*                   flash.xml*     pop_login*
address_book.csv          getip*         procmail/

2.显示权限、所有者等详细信息

ls -l
了解文件和文件夹的更多信息,例如它们的大小、所有者,以及谁可以对它们进行什么样的处理?为了获取这些信息,需要使用-l选项(或—format=long)。

$ ls -l ~/bin
total 2951
-rw-r--r-- 1 scott scott   15058  2005-10-03 18:49 ➥adblock_filters.txt
-rwxr-xr-- 1 scott root       33  2005-04-19 09:45 ➥addext
-rwxr--r-- 1 scott scott     245  2005-10-15 22:38 ➥backup
-rwxr-xr-- 1 scott root      190  2005-04-19 09:45 ➥convertsize
drwxr-xr-x 2 scott scott      48  2005-04-19 09:45 ➥credentials

-l选项代表long,可以看到,它提供了目录中文件的大量数据。我们按从右到左的顺序依次介绍你看到的内容。
最右边一列是最简单的内容:所列文件的名称。将-F选项加到-l上,如ls-lF。设置颜色也非常容易,就是用ls -lF --color。
向左一列,接下来看到的是日期和时间。这是文件最后被修改的时间,包括日期(按照年—月—日的格式)和时间(按照24小时制的格式)。
再向左一列是文件的大小(单位是字节)。
再往左的两列分别是文件的所有者和所属的组。从前面的列表可以看到,几乎每个文件都属于用户scott和组scott,只有addext和convertsize文件例外,它们属于用户scott和组root。
再向左,紧接着最后一列,这一列包含了一个数字。如果你正在处理一个文件,这个数字可以告诉你该文件有多少个硬链接(hard link);如果它是目录,这个数字是指该目录中包含有多少项内容。
现在轮到最左边的第一列了:每个文件和目录的真正权限。每个代码有10个字符,分成4组(虽然看起来不是这样的)。第一组由第一个字符组成;第二组由第二个到第四个字符组成;第三组包括第五个到第七个字符组成;第四组,即最后一组由第八个到第十个字符组成。例如,可以将credentials目录的权限划分成d|rwx|r-x|r-x。
第一组告诉你它是什么类型的文件。前面已经看到-F和–color选项用不同的方式来展现这一内容,-l也是如此。d表示credentials是目录,而第一个位置上的–则表示该项是一个文件(即便文件是可执行的,ls–l仍然只用一个-来表示,所以-F和–color选项可以为你提供更多的信息)。当然在第一个位置还可能看到其他选项,详细内容如表2-3所示。
表 权限字符和文件类型

字  符含  义
普通文件
可执行文件
d目录
l符号链接文件
s套接字(socket)
b块设备(block device)
c字符设备(character device)
p命名管道(named pipe)

接下来的9个字符(组成第二组、第三组、以及第四组)分别代表对文件的所有者、文件的组,以及系统中所有其他用户的权限。以在前面显示的addext文件为例,它的权限是rwxr-xr–,这表明所有者scott的权限是rwx,组(在这个例子中还是scott)的权限是r-x,系统中其他用户的权限是r–。
每个例子中,r表示“允许读取”,w表示“允许改写”(改写意味着修改和删除),x表示“允许执行”,–则表示“不允许执行这个操作”。如果原本应该出现r字符的位置,现在出现的是-,则表示“不允许读取”。这一点对于w和x也同样适用。
这时再看看addext和它的权限rwxr-xr–,所有者scott可以读取、改写和执行文件;组(root)的成员可以读取和执行文件,但是不能改写文件;主机上的其他任何人(通常称为“world”)能够读取文件,但是不能改写文件或者把它作为程序运行。

然而,目录文件则有些不同了。对于一个文件来说,r、w、x权限的意义非常明确,即读、写(或修改)或者执行这个文件。
r:对于目录这种情况,r表示用户可以使用ls命令列出目录的内容。
w:则表示用户可以在目录中增加更多的文件,重命名已经存在的文件,或者删除不再需要的文件。
x:相当于为了运行命令而访问目录的权力(需要访问和使用目录中的文件),或者是访问目录中的子目录。

以相反的顺序显示列表内容

ls -r
如果你不喜欢-l选项使用的默认字母顺序,则可以使用-r(或者–reverse)选项,以相反的顺序来排列显示内容。

$ ls -lar ~/
-rw-------  8800 2005-10-18 19:55 .bash_history
drwxr-xr-x   592 2005-10-18 11:22 .Azureus
-rw-r--r--  1026 2005-09-25 00:11 .audacity
drwx------    72 2005-09-16 19:14 .aptitude
drwxr-xr-x   200 2005-07-28 01:31 alias

说明 要记住,这里使用的是-r,而不是-R。-r表示反向,而-R则表示递归。
当使用-l选项时,输出的结果按照文件和文件夹名称的字母顺序来排序。添加-r选项后,将以相反的顺序输出结果,但仍然是基于文件名排序的。也要记住,在使用ls命令时,如果你想将输入的命令和选项的默认输出结果按相反的顺序排列,可以随时增加这个-r选项。

按文件的扩展名排序

ls -X
文件名称并不只是字母排序时唯一可用的排序对象。也可以对文件的扩展名进行字母顺序的排序。换句话说,你可以使用ls命令把所有以.doc结尾的文件分为一组,接着是以.jpg结尾的文件,最后是以.txt结尾的文件。使用-X选项(或–sort=extension);如果你想按相反的顺序排序,只需加上-r选项(或者–reverse)。

$ ls -lX ~/src
drwxr-xr-x     320 2005-10-06 22:35 backups
drwxr-xr-x    1336 2005-09-18 15:01 fonts
-rw-r--r-- 2983001 2005-06-20 02:15 install.tar.gz
-rw-r--r-- 6683923 2005-09-24 22:41 DuckDoom.zip

在结果中,最先显示的是文件夹(毕竟,它们没有文件扩展名),后面接着显示具有扩展名的各个文件。尤其是注意install.tar.gz这个文件有两个扩展名,但ls命令在排序时使用最后一个扩展名(.gz)。

按日期和时间排序

ls -t
按字母排序是不错,但是有时还需要按日期和时间对目录的内容进行排序。要想这样做,可以在-l选项的基础上使用-t选项(或者–sort=time);要按相反顺序排序,可以在-l选项的基础上使用-tr选项(或者–sort=time –reverse)。

$ ls -latr ~/
-rw-------   8800 2005-10-18 19:55 .bash_history
drwx------    368 2005-10-18 23:12 .gnupg
drwxr-xr-x   2760 2005-10-18 23:14 bin
drwx------    168 2005-10-19 00:13 .Skype

除了最后一项以外,其他所有项都是在同一天修改的。如果不使用-r选项,结果将按相反的顺序排列,最后一项会出现在第一个位置。
说明 注意在前面这个命令中一次使用了4个选项:-latr。你原本可以用-l -a -t –r来代替上述选项,但是谁愿意输入所有这么多连字符呢?将所有选项组合成一个大选项更快捷,也更容易。这些选项的加长版本(以两个连字符开始,由一个或者两个单词组成的选项)就不能组合在一起,而必须单独输入,如-la --sort=time --reverse。

按文件大小进行排序

ls -S
除了按照文件名或者扩展名的字母顺序,以及日期和时间对文件排序,还可以使用-S(或–sort=size)选项按照文件大小来排序。

$ ls -laS ~/
-rw-r--r--  109587 2005-10-19 11:53 .xsession-errors
-rw-------   40122 2005-04-20 11:00 .nessusrc
-rwxr--r--   15465 2005-10-12 15:45 .vimrc
-rw-------    8757 2005-10-19 08:43 .bash_history

当按照文件大小排序时,体积最大的文件会排在第一位。要按相反顺序排序,让体积最小的文件排在第一位,只需使用-r选项。

用K、M和G显示文件大小

ls -h
在上一节中,.vimrc文件那一行上的15 465表示这个文件大概有15 KB,但是需要自己动脑将字节转换为相应的千字节、兆字节或者吉字节并不总是很方便。通常,使用-h(或–human-readable)选项会更方便,也更容易理解。

$ ls -laSh ~/
-rw-r--r--  100K 2005-10-19 11:44 .xsession-errors
-rw-------   40K 2005-04-20 11:00 .nessusrc
-rwxr--r--   16K 2005-10-12 15:45 .vimrc
-rw-------  8.6K 2005-10-19 08:43 .bash_history

在这个例子中,K代表千字节(kilobyte)。如果文件足够大,还会看到代表兆字节(megabyte)的M,甚至是代表吉字节(gigabyte)的G。或许你会问,使用-h选项时,为什么.nessusrc文件的40 122字节显示为40 KB。记住,1 KB等于1024字节,用40 122除以1 024时,得到的是39.1816406千字节,ls–h就取整为40 KB。1 MB实际上是1 048 576字节,1 GB则是1 073 741 824字节。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/45923.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用 netsh wlan show profile 命令查看历史连接过的 wifi

netsh wlan show profile 命令是 Windows 命令行工具中 netsh 的一部分,netsh 是一个强大的网络配置工具。wlan 子命令用于管理和显示无线网络配置。通过 netsh wlan show profile 命令,你可以查看存储在系统中的无线网络配置文件。这些配置文件包含了连…

java中遍历数组的三种方式

文章目录 遍历数组的三种方式1.for循环(1)遍历一维数组(2)遍历二维数组 2.foreach遍历(1).遍历一维数组(2).遍历二维数组 3.Arrays里的toString方法(1).遍历一维数组(2).遍历二维数组 遍历数组的三种方式 1.for循环 (1)遍历一维数组 int[] arr {1,3,2,4,5}; for (int i 0;i…

(算法)硬币问题

问题:有1元,5元,10元,50元,100元,500元的硬币各有C1,C5,C10.C50,C100,C500个。 现在要用这些硬币来支付A元,最小需要多少枚硬币? 该题使用递归算法,利用局部最优解来推导…

最小二乘是什么?

最小二乘法(Least Squares Method)是一种统计方法,用于通过最小化观测数据与模型预测值之间的误差平方和来拟合数据。这种方法广泛应用于回归分析中,尤其是在线性回归模型中。 基本原理 最小二乘法的基本思想是找到模型参数&…

数学建模中的辅助变量、中间变量、指示变量

在数学建模中,除了决策变量外,还有一些其他类型的变量,如中间变量、辅助变量和指示变量。每种变量在模型中都有特定的用途和意义。以下是对这些变量的详细解释: 1. 决策变量(Decision Variables) 定义&am…

求职笔记day3

运动量3.5万步。五园连通未完成。 未考试,朋友建议按代码随想录的框架先刷对应的知识点。 代码随想录 (programmercarl.com) 704. 二分查找 - 力扣(LeetCode) 单词倒排_牛客题霸_牛客网 (nowcoder.com)

5Python的Pandas:数据结构

Pandas是基于强大的NumPy库开发的,它继承了NumPy中的一些数据结构,也继承了NumPy的高效计算特性。 1.Python的数据类型 Python 提供了多种数据类型,用于存储和操作不同类型的数据。以下是一些主要的数据类型: 数值类型&#xff…

解答|服务器只能开22端口可以申请IP地址SSL证书吗?

IP地址SSL证书,是一种专门颁发给公网IP地址的SSL证书,而不是常见的基于域名的SSL证书。SSL证书主要用于保障数据在客户端(如用户的浏览器)和服务器之间传输时的加密性和安全性,以防止数据被截取或篡改。 服务器只能开…

翁恺-C语言程序设计-07-1. 换个格式输出整数

07-1. 换个格式输出整数 让我们用字母B来表示“百”、字母S表示“十”&#xff0c;用“12…n”来表示个位数字n&#xff08;<10&#xff09;&#xff0c;换个格式来输出任一个不超过3位的正整数。例如234应该被输出为BBSSS1234&#xff0c;因为它有2个“百”、3个“十”、以…

2024.7.13刷题记录-牛客小白月赛98(未完)

目录 一、A-骰子魔术_牛客小白月赛98 (nowcoder.com) 1.模拟 2.简洁写法 二、B-最少剩几个&#xff1f;_牛客小白月赛98 (nowcoder.com) 贪心-数学 三、C-两个函数_牛客小白月赛98 (nowcoder.com) 1.模拟 2.逆元 一、A-骰子魔术_牛客小白月赛98 (nowcoder.com) 1.模拟 …

github actions方式拉取docker镜像

参考&#xff1a; https://wkdaily.cpolar.cn/archives/gc 注意github actions提供的免费虚拟机空间有限&#xff0c;空间不足会报错&#xff0c;查看大概语句有10来G 我在workflow file里加了df -h 运行查看磁盘情况&#xff1a; 通过pwd命令&#xff0c;可以知道运行目录/ho…

ETL数据集成丨主流ETL工具(ETLCloud、DataX、Kettle)数据传输性能大PK

目前市面上的ETL工具众多&#xff0c;为了方便广大企业用户在选择ETL工具时有一个更直观性能方面的参考值&#xff0c;我们选取了目前市面上最流行的三款ETL工具&#xff08;ETLCloud、DataX、Kettle&#xff09;来作为本次性能传输的代表&#xff0c;虽然性能测试数据有很多相…

【JavaScript】解决 JavaScript 语言报错:Uncaught TypeError: XYZ is not a function

文章目录 一、背景介绍常见场景 二、报错信息解析三、常见原因分析1. 变量或对象属性类型错误2. 函数名拼写错误或覆盖3. 作用域问题导致的函数未定义4. 调用未初始化的函数 四、解决方案与预防措施1. 确保变量类型正确2. 检查拼写错误3. 注意作用域4. 初始化变量 五、示例代码…

Web组成架构

网站源码&#xff1a;分脚本类型&#xff0c;分应用方向操作系统&#xff1a;windows&#xff0c;linux中间件&#xff08;搭建平台&#xff09;&#xff1a;apche、IIS、tomcat、nginx等数据库&#xff1a;mssql、oracle、sybase、db2、access等 WEB相关安全漏洞 WEB源码类对…

算法训练营day11 栈与队列(栈的应用,单调队列,优先队列)

&#x1f4a1; 解题思路 &#x1f4dd; 确定输入与输出&#x1f50d; 分析复杂度&#x1f528; 复杂题目拆分 &#xff1a;严谨且完整 地拆分为更小的可以解决的子问题&#xff08;栈和队列的功能&#xff0c;栈和队列的变体应用&#xff09;–&#xff08;多总结&#xff09;…

C#中的反射

dll和exe文件的区别 用途&#xff1a; .exe&#xff08;可执行文件&#xff09;&#xff1a;是可以直接运行的程序文件。当你双击一个 .exe 文件或在命令行中输入它的名字&#xff0c;操作系统会加载并执行这个程序。 .dll&#xff08;动态链接库&#xff09;&#xff1a;包含…

graphviz subgraph添加边界框

subgraph name 属性必须要以cluster开头。 A Quick Introduction to GraphvizAn awesome tool for software documentation and visualizing graphshttps://www.worthe-it.co.za/blog/2017-09-19-quick-introduction-to-graphviz.html digraph {rankdir"LR"// the n…

新版k8s拉取镜像失败问题

新版版从k8s从1.23后放弃使用docker容器作为的默认运行时了&#xff0c;而是采用的containerd&#xff0c;使用时不在使用docker拉取镜像&#xff0c;这就带来了一系列的问题。在k8s1.24之后用户可以选择docker或者选择contained作为容器运行时&#xff0c;如果不指定使用的doc…

【探索Linux】P.39(传输层 —— TCP的三次 “握手” 和四次 “挥手” )

阅读导航 引言一、TCP的三次握手1. 简介2. 图解三次握手3. 名词解释&#xff08;1&#xff09;SYN&#xff08;同步序列编号&#xff09;包&#xff08;2&#xff09;SYN-ACK&#xff08;同步确认&#xff09;包&#xff08;3&#xff09;ACK&#xff08;确认&#xff09;包 4.…

基于matlab的SVR回归模型

1 原理 SVR&#xff08;Support Vector Regression&#xff09;回归预测原理&#xff0c;基于支持向量机&#xff08;SVM&#xff09;的回归分支&#xff0c;其核心思想是通过寻找一个最优的超平面来进行回归预测&#xff0c;并处理非线性回归问题。以下是SVR回归预测原理的系统…