zoukankan      html  css  js  c++  java
  • [命令技巧]ls

    原文地址:http://www.dutor.net/index.php/2010/06/cmd-ls/

      ls == list,根据不同的选项,列举指定目录或文件的相关信息,是Unix/Linux下最常用的命令之一,cd到某一目录下后执行的第一个命令。

    ls

      不带参数的ls列举当前目录下有哪些文件和目录,ls Folder列举Folder目录中的文件和子目录,ls File显示File文件的信息(默认为文件名)。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    dutor@dutor-desktop:~$ cd Wdir/
    /home/dutor/Wdir
    dutor@dutor-desktop:~/Wdir$ ls
    APUE  ASM  Cpp  LaTeX  PHP  Python  QT  Shell
    dutor@dutor-desktop:~/Wdir$ ls Cpp/
    ACM     main    main.cpp  Makefile    Pthread  symtab         tags    test.s
    Curses  main.c  main.s    Playaround  STL      SystemProgram  test.c  TutManual
    dutor@dutor-desktop:~/Wdir$ ls Cpp/Makefile
    Cpp/Makefile

    ls -a

      -a选项同ls,但会列举当前目录或者指定目录下的所有文件,包括dot文件(.开头的文件)和.目录和..目录。

    1
    2
    
    dutor@dutor-desktop:~/Wdir$ ls -a
    .  ..  APUE  ASM  Cpp  .I2C.c.swp  LaTeX  PHP  Python  QT  Shell

    ls -A

      -A选项同ls,但会列举当前目录或者指定目录下的所有文件,包括dot文件(.开头的文件),但不包括.目录和..目录。

    1
    2
    
    dutor@dutor-desktop:~/Wdir$ ls -A
    APUE  ASM  Cpp  .I2C.c.swp  LaTeX  PHP  Python  QT  Shell

    ls -l

      -l选项的ls命令将列举当前目录或指定目录中文件或者子目录的详析信息。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    dutor@dutor-desktop:~/Wdir/Cpp/STL$ ls -l
    total 32
    drwxr-xr-x 2 dutor dutor 4096 2010-04-19 19:25 bind2nd
    -rw-r--r-- 1 dutor dutor 1296 2010-03-27 18:39 Heap.cpp
    -rw-r--r-- 1 dutor dutor  980 2010-03-27 18:03 Kth-Max.cpp
    -rw-r--r-- 1 dutor dutor 1168 2010-04-29 20:24 main.cpp
    -rw-r--r-- 1 dutor dutor  709 2010-04-20 17:58 operator.cpp
    -rw-r--r-- 1 dutor dutor  654 2010-03-27 17:40 priority_queue.cpp
    -rw-r--r-- 1 dutor dutor  461 2010-04-10 22:41 sort_list.cpp
    -rw-r--r-- 1 dutor dutor  655 2010-04-29 21:18 test.cpp

    ls -l列举的信息包含7个以Tab的域:

    • 第一个域:第一个字符指明了文件类型
      • -: 普通文件;
      • d: 目录文件;
      • l: 符号链接;
      • s: socket文件;
      • b: 块设备;
      • c: 字符设备;
      • p: 管道文件。

      后面的9个字符指明了文件的访问权限:每三位指明一类用户的权限,分别是文件属主、同组用户、其它用户,权限分为读(r)、写(w)、执行(x)。

    • 第二个域:链接数。普通文件至少为1,目录至少为2(.和..);
    • 第三域:文件属主;
    • 第四域:用户组;
    • 第五域:文件大小,其中目录大小通常为块大小的整数倍;
    • 第六域:文件的最近修改日期和时间,修改文件意味着对其内文件或子目录的增添和修改;
    • 第七域:文件名

    ls -t

      按文件的修改时间列举文件,最近修改的在前。

    1
    2
    3
    4
    
    dutor@dutor-desktop:~/Wdir$ ls
    APUE  ASM  Cpp  LaTeX  PHP  Python  QT  Shell
    dutor@dutor-desktop:~/Wdir$ ls -t
    Cpp  QT  Shell  PHP  ASM  LaTeX  APUE  Python

    ls -r

      以相反顺序列举文件。

    1
    2
    3
    4
    5
    6
    
    dutor@dutor-desktop:~/Wdir$ ls
    APUE  ASM  Cpp  LaTeX  PHP  Python  QT  Shell
    dutor@dutor-desktop:~/Wdir$ ls -t
    Cpp  QT  Shell  PHP  ASM  LaTeX  APUE  Python
    dutor@dutor-desktop:~/Wdir$ ls -tr
    Python  APUE  LaTeX  ASM  PHP  Shell  QT  Cpp

    ls -1

      单独行列举文件。

    ls -F

      可视化显示文件类型。

    1
    2
    
    $ ls -F
    Desktop/  Documents/  Ubuntu-App@  firstfile  Music/  Public/  Templates/
    • / : 目录
    • nothing : 普通文件.
    • @ :符号链接文件
    • * :可执行文件

    ls -latr

      即是说,各个选项可以结合使用,除了互相排斥的选项,例如-a和-A。

    使用alias

    使用alias会更加方便,我定义的alias有:

    1
    2
    3
    
    alias ll='ls -lh'
    alias la='ls -A'
    alias l='ls -CF'

  • 相关阅读:
    Leetcode#117 Populating Next Right Pointers in Each Node II
    Leetcode#123 Best Time to Buy and Sell Stock III
    获取文件大小的方法
    内存映射
    git patch
    git cherry-pick
    关于extern的说明
    Linux如何查看与/dev/input目录下的event对应的设备
    如何在Linux下统计高速网络中的流量
    [: ==: unary operator expected 解决方法
  • 原文地址:https://www.cnblogs.com/wangkangluo1/p/2128924.html
Copyright © 2011-2022 走看看