当我使用这些命令时,我得到相同的输出,但只有命令的顺序发生了变化ls -ltr
。谁能告诉我以下命令之间有什么区别?
ll
ls -l
ls -ltr
hee*_*ayl 20
首先,上述命令不会生成相同的输出。以下是详细信息:
ll
: 没有类似的命令ll
,在 Ubuntu 中它是命令的别名ls -alF
。您可以通过以下方式找到它:
$ type ll
ll is aliased to `ls -alF'
Run Code Online (Sandbox Code Playgroud)
-a
选择是显示隐藏文件(将显示.
和..
太)
-l
选项是将输出显示为一个长列表以及各种属性,例如权限、文件大小、使用、组、修改时间等。
-F
将附加*/=>@|
到条目之一,它基本上用于区分文件和目录,因为它将附加/
到目录条目
例子 :
$ ll
total 24
drwxrwxr-x 4 chayan chayan 4096 Jun 25 13:53 ./
drwxrwxr-x 3 chayan chayan 4096 Jun 25 13:34 ../
drwxrwxr-x 2 chayan chayan 4096 Jun 25 13:35 data/
-rw-rw-r-- 1 chayan chayan 88 Jun 25 13:50 filenames.txt
Run Code Online (Sandbox Code Playgroud)ls -l
:如前所述-l
,条目将显示为一个长列表以及各种属性。
例子:
$ ls -l
total 16
drwxrwxr-x 2 chayan chayan 4096 Jun 25 13:35 data
-rw-rw-r-- 1 chayan chayan 88 Jun 25 13:50 filenames.txt
Run Code Online (Sandbox Code Playgroud)ls -ltr
:
-t
选项将按修改日期对条目进行排序(最新的在前)
-r
将颠倒排序顺序。
由于-t
将按修改时间排序,最新的-r
将导致相反,即最旧的条目现在将首先显示。
示例(添加文件和目录以使其更清晰):
$ ls -lt
total 16
drwxrwxr-x 2 chayan chayan 4096 Jun 25 13:50 log
-rw-rw-r-- 1 chayan chayan 88 Jun 25 13:50 filenames.txt
-rw-rw-r-- 1 chayan chayan 208 Jun 25 13:49 move.sh
drwxrwxr-x 2 chayan chayan 4096 Jun 25 13:35 data
$ ls -ltr
total 16
drwxrwxr-x 2 chayan chayan 4096 Jun 25 13:35 data
-rw-rw-r-- 1 chayan chayan 208 Jun 25 13:49 move.sh
-rw-rw-r-- 1 chayan chayan 88 Jun 25 13:50 filenames.txt
drwxrwxr-x 2 chayan chayan 4096 Jun 25 13:50 log
Run Code Online (Sandbox Code Playgroud)检查man ls
以获得更多想法。