每日命令 | ls

每日命令系列导语

       安全行业,接触Linux不可避免。今天我们开启Linux学习之旅。

       一直在构思Linux系列文章该怎么排版,最终决定采用每日命令的形式,毕竟Linux有大量的命令需要学习。

       每日命令系列根据命令知识点来排版。命令知识点多,一篇就只介绍一条命令;命令知识点少,就多介绍几条命令。命令以外的知识会视情况进行排版:碎片化讲解或单独发布。

       争取让校友们看完一篇文章不会太累,也不会觉得学到的东西少。当然,文章主要面向小白,所以知识点都很基础,这也符合安全小白团的宗旨。已经掌握了基础的校友们,可以跳过。

       学习命令,无外乎学习三个方面的内容:语法+选项+参数,所以每日命令系列主要从这三个方面进行介绍。

       首先介绍命令的语法,然后对常用的选项进行介绍,不会介绍所有的选项(有兴趣的校友可以自己查阅资料或安装Linux实践)。最后讲讲命令的参数。当然,为了让大家更好的理解,循序渐进,我不一定会按这个顺序。

       秉承每日系列简单粗暴的原则,废话不多话,开始每日命令系列第一章——ls命令的学习。

命令简介

       ls是英文list的缩写,用于列出文件,在Unix和类Unix系统中都有实现。相当于Windows中的dir命令。

命令详解

语法

1
ls  [选项] [文件]

       以上是ls命令的语法,比较简单。其实Linux大多数命令的语法格式都是这样。

1
命令名  [选项] [参数]

       有个疑问:我是怎么知道ls命令语法的?这里要给大家介绍一下”–help“选项。Linux命令都有这个选项,用于打印命令的帮助信息。

       当我们不知道命令是用来干嘛的,或者命令语法/选项忘了,我们可以使用这个选项来获取命令的帮助信息。

       
       以上是ls命令的帮助信息。介绍了:ls命令的用法,也就是语法;ls命令的用途——列出文件的信息(默认是当前目录);ls命令的选项。

选项

       ls命令选项比较多,这里我们挑一些常用的选项来介绍。

1
ls

       在不添加任何选项和参数运行时,ls命令默认列出当前目录下隐藏文件以外的所有文件和目录。(仅列出名字)

       
       当前目录为根目录“/”,因此列出了该目录下隐藏文件以外的所有文件和目录的名字。

       要注意的是,Linux是严格区分大小写的。所以如果将命令大写的话,系统是识别不出来的。

       
       默认情况下,只列出非隐藏的文件和目录,那有没有办法列出所有的文件和目录,包括隐藏文件和目录呢?

       办法当然是有的,只需要在ls命令后添加“-a”选项即可。

1
ls -a

       注意,命令与选项之间,选项与参数之间,都是有空格的,千万不要将三者写在一起。

       
       可以看到,列出的文件和目录中多了以圆点“.”开头的文件和目录。Linux中,以圆点“.”开头的文件和目录默认情况下会被隐藏,在Windows中也一样。

       大家有没有注意到,列出的文件和目录中,有“.”和“..”。在Linux中,这分别代表当前目录和上级目录,所以大家可能经常看到以下格式的命令:

1
./文件

       这条命令的意思是执行当前目录下的这个文件。假如你下载了一个脚本工具,想要运行它进行漏洞检测。你可以先进入脚本所在的目录,然后输入“./脚本名”来运行脚本。

       如果不想打印这两个目录,可以使用“-A”选项,效果和“-a”选项一样,只是不列出“.”和“..”而已。这里再次强调,Linux严格区分大小写。

       这么多文件和目录密密麻麻列出来,是不是感觉看着不舒服?教你一招,使用“-l”选项,以长格式列出文件和目录的信息。

1
ls -l

       
       这样看着多多少少舒服了一点。但是怎么多了一些其他的信息?这是因为“-l”选项会将文件和目录的属性打印出来,比如文件类型、权限等等。相当于Windows中右键—>属性。

       长格式中各个字段的知识点有点多,我在以后的文章再讲,这里将重心放在命令的学习上。

       在“-l”选项列出的信息中,第5列表示文件/目录的大小,默认单位为字节,可使用“-h”选项,将单位转换为对人们友好的单位(K、M、G)。

1
ls -hl

       命令可以同时使用多个选项,多个选项写在一起即可。这条命令的意思是以长格式打印当前目录下的非隐藏文件和目录,并将大小显示成对人们友好的单位。

       
       在这里我想提一句:命令的选项一般都有简化形式和完整形式,无论使用哪种形式的选项,都能达到相同的效果。

       
       我用“–help”选项的简化模式“-h”,依然成功打印出了命令的帮助信息。但有些命令不一定有“-h”选项,或者“-h”并不是“–help”的简化。就比如ls命令,“-h”选项不是打印帮助信息。

       所以查看帮助信息的时候,个人推荐使用完整选项”–help“。至于其他选项,当然使用简化形式,更方便使用和记忆。

参数

       命令除了可以添加选项,还可以添加参数。ls命令的参数就是文件名和目录名。

1
ls 0

       添加参数后,我们就可以列出参数指定的文件/目录的信息了。

       
       这里我列出了当前目录下的0文件,也可以将参数设置为指定目录。这样会列出指定目录下的文件。

       
       如果只想查看目录本身,不想列出目录下的文件,我们可以使用“-d”选项。

       
       和选项一样,也可以同时添加多个参数。注意,参数之间有空格。

       
       当然,命令也可以选项、参数同时使用。

       
       以上就是ls命令的语法、常用选项、参数。

知识总结

       以下是对本文知识的总结。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
语法:ls  [选项] [文件]
用途:
列出文件的信息(默认情况下仅列出名字)
如果以目录名作为参数,则会列出该目录下的文件。
选项:
-a ———— 列出所有文件和目录(包括隐藏文件和目录)
-A ———— 列出除当前目录“.”和上级目录“..”以外的所有文件和目录(包括隐藏文件和目录)
-l ———— 以长格式列出文件和目录的属性
-h ———— 以对人类友好的单位显示文件和目录的大小
-d ———— 只列出目录本身,不列出目录下的文件
参数:文件名/目录名
其他:
“--help”选项可获取命令的帮助信息
Linux严格区分大小写
命令可以同时使用多个选项,多个选项写在一起即可
命令也可以指定多个文件和目录作为参数,ls则会列出所有指定的文件和目录中的文件名。

免责声明

       安全小白团是帮助用户了解信息安全技术、安全漏洞相关信息的博客。安全小白团提供的程序(方法)可能带有攻击性,仅供安全研究与教学之用,用户将其信息做其他用途,由用户承担全部法律及连带责任,安全小白团不承担任何法律及连带责任。

0%