linux学习笔记命令篇1---命令ls
前言:
linux中接触最多的就是命令和文件。
命令
命令是有其格式的, 一般格式是command [option] parameter1 parameter2 [paramete3 ...];
注释:
command是命令。这些是linux可以执行的命令名称,类似与一些关键字。如果输入非法的命令,linux会提示找不到这个命令的。
option是选项。 这个用中括号括起来的表示该选项可以用,也可以不用,如果没有就是默认选项。选项一般是用减号'-'开始,多个选项可以合起来写成一个,也可以分开写成多个。
parameter1 是参数。如果有参数就写,没用参数就不写。如果有多个参数,就用空格分割,空格不论多少个,linux系统都会按照一个空格处理。
;分号是命令结束的标志。如果在一行中包含多个命令,可用分号把多个命令分隔开。
linux是区分大小写的。
文件
linux的文件可以分为普通文件,链接文件,管道文件,块文件,字符文件等。我们大部分时间是和普通文件和文件夹打交道。
文件如果按照文件的权限可以分为r(读read),w(写write),x(可执行execute)文件。
linux命令执行的两种方式:
1.直接在linux的shell窗口输入linux命令执行。
2.把命令写入到shell脚本文件里,执行该可执行脚本。
ls命令介绍:
大部分人接触到linux的第一个命令就是ls命令。
ls命令就是list的缩写。缺省下ls用来打印出当前目录的清单。 如果ls指定其他目录,那么就会显示指定目录里的文件及文件夹清单。
通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限),查看目录信息等等。ls 命令在日常的linux操作中用的很多!
1. 命令格式:
ls [选项] [目录名]
2. 命令功能:
列出目标目录中所有的子目录和文件。
3. 常用参数:
-a, –all 列出目录下的所有文件,包括以 . 开头的隐含文件
-A 同-a,但不列出“.”(表示当前目录)和“..”(表示当前目录的父目录)。
-c ctime (文件状态最后更改的时间). 配合 -lt参数,根据 ctime 排序及显示;配合 -l:显示 ctime 但根据名称排序。否则,根据 ctime 排序
-C 每栏由上至下列出项目
--color[=WHEN] 控制是否使用色彩分辨文件。WHEN 可以是'never'、'always'或'auto'其中之一
-d, –directory 将目录象文件一样显示,而不是显示其下的文件。---comment20170914:只显示一个点,没有显示其他文件夹。
-D, –dired 产生适合 Emacs 的 dired 模式使用的结果
-C:多列显示输出结果。这是默认选项;
-l:与“-C”选项功能相反,所有输出信息用单列格式输出,不输出为多列;l 的作用 更多的是显示文件或者目录的详细信息。
-F:在每个输出项后追加文件的类型标识符,具体含义:“*”表示具有可执行权限的普通文件,“/”表示目录,“@”表示符号链接,“|”表示命令管道FIFO,“=”表示sockets套接字。当文件为普通文件时,不输出任何标识符;
-b:将文件中的不可输出的字符以反斜线“”加字符编码的方式输出;
-f 对输出的文件不进行排序,-aU 选项生效,-lst 选项失效
-g 类似 -l,但不列出所有者
-G, –no-group 不列出任何有关组的信息
-h, –human-readable 以容易理解的格式列出文件大小 (例如 1K 234M 2G)
–si 类似 -h,但文件大小取 1000 的次方而不是 1024
-H, –dereference-command-line 使用命令列中的符号链接指示的真正目的地
–indicator-style=方式 指定在每个项目名称后加上指示符号<方式>:none (默认),classify (-F),file-type (-p)
-i, –inode 印出每个文件的 inode 号
-I, –ignore=样式 不印出任何符合 shell 万用字符<样式>的项目
-k 即 –block-size=1K,以 k 字节的形式表示文件的大小。
-l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来。
-L, –dereference 当显示符号链接的文件信息时,显示符号链接所指示的对象而并非符号链接本身的信息
-m 所有项目以逗号分隔,并填满整行行宽
-o 类似 -l,显示文件的除组信息外的详细信息。
-r, –reverse 依相反次序排列
-R, –recursive 同时列出所有子目录层
-s, –size 以块大小为单位列出所有文件的大小
-S 根据文件大小排序
–sort=WORD 以下是可选用的 WORD 和它们代表的相应选项:
extension -X status -c
none -U time -t
size -S atime -u
time -t access -u
version -v use -u
-t 以文件修改时间排序
-u 配合
-lt:显示访问时间而且依访问时间排序
配合 -l:显示访问时间但根据名称排序
否则:根据访问时间排序
-U 不进行排序;依文件系统原有的次序列出项目
-v 根据版本进行排序
-w, –width=COLS 自行指定屏幕宽度而不使用目前的数值
-x 逐行列出项目而不是逐栏列出
-X 根据扩展名排序
-1 每行只列出一个文件
–help 显示此帮助信息并离开
–version 显示版本信息并离开
-m:用“,”号区隔每个文件和目录的名称;
-n:以用户识别码和群组识别码替代其名称;
-L:如果遇到性质为符号链接的文件或目录,直接列出该链接所指向的原始文件或目录;
4. 常用范例:
例一:列出/home/peidachang文件夹下的所有文件和目录的详细资料
命令:ls -l -R /home/peidachang
在使用 ls 命令时要注意命令的格式:在命令提示符后,首先是命令的关键字,接下来是命令参数,在命令参数之前要有一短横线“-”,所有的命令参数都有特定的作用,自己可以根据需要选用一个或者多个参数,在命令参数的后面是命令的操作对象。在以上这条命令“ ls -l -R /home/peidachang”中,“ls” 是命令关键字,“-l -R”是参数,“ /home/peidachang”是命令的操作对象。在这条命令中,使用到了两个参数,分别为“l”和“R”,当然,你也可以把他们放在一起使用,如下所示:
命令:ls -lR /home/peidachang
这种形式和上面的命令形式执行的结果是完全一样的。另外,如果命令的操作对象位于当前目录中,可以直接对操作对象进行操作;如果不在当前目录则需要给出操作对象的完整路径,例如上面的例子中,我的当前文件夹是peidachang文件夹,我想对home文件夹下的peidachang文件进行操作,我可以直接输入 ls -lR peidachang,也可以用 ls -lR /home/peidachang。
例二:列出当前目录中所有以“t”开头的目录的详细内容,可以使用如下命令:
命令:ls -l t*
可以查看当前目录下文件名以“t”开头的所有文件的信息。其实,在命令格式中,方括号内的内容都是可以省略的,对于命令ls而言,如果省略命令参数和操作对象,直接输入“ ls ”,则将会列出当前工作目录的内容清单。
例三:只列出文件下的子目录
命令:ls -F /opt/soft |grep /$
列出 /opt/soft 文件下面的子目录
输出:
[root@localhost opt]# ls -F /opt/soft |grep /$
jdk1.6.0_16/
subversion-1.6.1/
tomcat6.0.32/
命令:ls -l /opt/soft | grep "^d"
列出 /opt/soft 文件下面的子目录详细情况
输出:
[root@localhost opt]# ls -l /opt/soft | grep "^d"
drwxr-xr-x 10 root root 4096 09-17 18:17 jdk1.6.0_16
drwxr-xr-x 16 1016 1016 4096 10-11 03:25 subversion-1.6.1
drwxr-xr-x 9 root root 4096 2011-11-01 tomcat6.0.32
例四:列出目前工作目录下所有名称是s 开头的档案,愈新的排愈后面,可以使用如下命令:
命令:ls -ltr s*
输出:
[root@localhost opt]# ls -ltr s*
src:
总计 0
script:
总计 0
soft:
总计 350644
drwxr-xr-x 9 root root 4096 2011-11-01 tomcat6.0.32
-rwxr-xr-x 1 root root 81871260 09-17 18:15 jdk-6u16-linux-x64.bin
drwxr-xr-x 10 root root 4096 09-17 18:17 jdk1.6.0_16
-rw-r--r-- 1 root root 205831281 09-17 18:33 apache-tomcat-6.0.32.tar.gz
-rw-r--r-- 1 root root 5457684 09-21 00:23 tomcat6.0.32.tar.gz
-rw-r--r-- 1 root root 4726179 10-10 11:08 subversion-deps-1.6.1.tar.gz
-rw-r--r-- 1 root root 7501026 10-10 11:08 subversion-1.6.1.tar.gz
drwxr-xr-x 16 1016 1016 4096 10-11 03:25 subversion-1.6.1
例五:列出目前工作目录下所有档案及目录;目录于名称后加"/", 可执行档于名称后加"*"
命令:ls -AF
输出:
[root@localhost opt]# ls -AF
log/ script/ soft/ src/ svndata/ web/
例六:计算当前目录下的文件数和目录数
命令:
ls -l * |grep "^-"|wc -l ---文件个数
ls -l * |grep "^d"|wc -l ---目录个数
例七: 在ls中列出文件的绝对路径
命令:ls | sed "s:^:`pwd`/:"
输出:
[root@localhost opt]# ls | sed "s:^:`pwd`/:"
/opt/log
/opt/script
/opt/soft
/opt/src
/opt/svndata
/opt/web
例九:列出当前目录下的所有文件(包括隐藏文件)的绝对路径, 对目录不做递归
命令:find $PWD -maxdepth 1 | xargs ls -ld
输出:
[root@localhost opt]# find $PWD -maxdepth 1 | xargs ls -ld
drwxr-xr-x 8 root root 4096 10-11 03:43 /opt
drwxr-xr-x 2 root root 4096 2012-03-08 /opt/log
drwxr-xr-x 2 root root 4096 2012-03-08 /opt/script
drwxr-xr-x 5 root root 4096 10-11 03:21 /opt/soft
drwxr-xr-x 2 root root 4096 2012-03-08 /opt/src
drwxr-xr-x 4 root root 4096 10-11 05:22 /opt/svndata
drwxr-xr-x 4 root root 4096 10-09 00:45 /opt/web
例十:递归列出当前目录下的所有文件(包括隐藏文件)的绝对路径
命令: find $PWD | xargs ls -ld
例十一:指定文件时间输出格式
命令:
ls -tl --time-style=full-iso
输出:
[root@localhost soft]# ls -tl --time-style=full-iso
总计 350644
drwxr-xr-x 16 1016 1016 4096 2012-10-11 03:25:58.000000000 +0800 subversion-1.6.1
ls -ctl --time-style=long-iso
输出:
[root@localhost soft]# ls -ctl --time-style=long-iso
总计 350644
drwxr-xr-x 16 1016 1016 4096 2012-10-11 03:25 subversion-1.6.1
扩展:
1. 显示彩色目录列表
打开/etc/bashrc, 加入如下一行:
alias ls="ls --color"
下次启动bash时就可以像在Slackware里那样显示彩色的目录列表了, 其中颜色的含义如下:
1. 蓝色-->目录
2. 绿色-->可执行文件
3. 红色-->压缩文件
4. 浅蓝色-->链接文件
5. 灰色-->其他文件
我常使用的ls的参数组合如下:
ls -l : 列出当前目录下的所有文件和文件夹的详细信息,输出结果是默认按照文件名排序。
ls -alt :列出当前目录下的所有文件和文件夹的详细信息,并按照文件的访问时间排序。从最新到旧。
ls -altr :列出当前目录下的所有文件和文件夹的详细信息,并按照文件的访问时间排序。从旧到新。
ls -alh : 列出当前目录下的所有文件和文件夹的详细信息,把文件的大小以M,G,K等形式显示。
l : 列出当前目录下的所有文件和文件夹的详细信息,并按照文件的名称排序。
ls -1: 每行列出一个文件名称。
ls -F : 列出当前目录下的所有文件和文件夹,并且文件夹以/结尾,可执行文件以*结尾。
ls -R: 递归列出当前目录下的所有文件和文件夹的详细信息,并按照文件的访问时间排序。
ls 与grep, find,awk,while等命令一起使用。

ls列出的文件的排序:
ls -S: 按照文件大小排序
ls -clt : 按照文件的ctime排序
ls -cltr : 按照文件的ctime反向排序,时间从上到下越来越新。
ls -alt : 按照文件的name排序
ls -X : 按照文件的后缀名排序
linux学习笔记命令篇1---命令ls的更多相关文章
- linux学习笔记2-linux的常用命令
第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些常用的终端命令 ======== ...
- Linux学习笔记:使用ftp命令上传和下载文件
Linux中如何使用ftp命令,包括如何连接ftp服务器,上传or下载文件以及创建文件夹.虽然现在有很多ftp桌面应用(例如:FlashFXP),但是在服务器.SSH.远程会话中掌握命令行ftp的使用 ...
- 【linux学习笔记五】帮助命令
man //查看ls作用 man ls man -f命令 相当于 whatis命令 --help ls --help help help shell help cd info详细命令帮助
- linux学习笔记---一些有趣的命令
一 在说链接之前我们哈需要说明一个东西,就是inode,一个文件的名字可以有多个,但是inode里的i-number却只有一个,(inode是一个数据结构,里面存放文件的各种属性,属主,属组,权限,大 ...
- Linux学习笔记29——IPC状态命令
一 IPC IPC是进程间通讯,在前面,我们相继学习了进程间通讯机制有信号量,内存共享,消息队列.状态命令(ipcs)和删除命令(ipcrm)提供了一种检查和清理IPC机制的方法. 二 状态命令 1 ...
- Linux学习笔记之权限与命令之间的关系(重要)及文件与文件夹知识总结
一.让使用者能进入某文件夹成为可工作文件夹的基本权限为何: 可使用的命令:比如 cd 等变换工作文件夹的命令. 文件夹所需权限:使用者对这个文件夹至少须要具有 x的权限 额外需求:假设使用者想要在这个 ...
- Linux学习笔记:输入输出重定向 >>命令
Linux重定向是指修改原来默认的一些东西,对原来系统命令的默认执行方式进行改变.比如说我不想看到在显示器的输出,而是希望输出到某一文件中就可以通过Linux重定向来进行这项工作. 将stdout重定 ...
- Linux学习笔记:vi常用命令
在Linux系统中常用vi命令进行文本编辑. vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器.Linux中的vi编辑器叫vim,它是vi的增强版(vi Improved), ...
- Linux学习笔记二:tar命令使用
tar命令详解 tar命令详解 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的 ...
- 【linux学习笔记八】常用命令
查询与自动挂载 #查询系统中已经挂载的设备 mount #依据配置文件/etc/fstab的内容,自动挂载 mount -a 挂载命令格式 mount [-t 文件系统] [-o 特殊选项] 设备文件 ...
随机推荐
- unity pbr
https://disney-animation.s3.amazonaws.com/library/s2012_pbs_disney_brdf_notes_v2.pdf 参数
- 深度增强学习--DQN的变形
DQN的变形 double DQN prioritised replay dueling DQN
- OO软件设计说明书结构
1 概述 系统简述.软件设计目标.参考资料.修订版本记录 这部分论述整个系统的设计目标,明确地说明哪些功能是系统决定实现而哪些时不准备实现的.同时,对于非功能性的需求例如性能.可用性等,亦需提 ...
- 【ACM】Fighting for HDU
#include <stdio.h> #include <stdlib.h> #define max 100 /* run this program using the con ...
- Win7无法安装Flash Player怎么办
在IE的工具选项中把安全选项中的ActiveX控件一系列都改为启用即可.
- 防止继承和覆盖(PHP类)
可能出现需求:我们不希望继承的类覆盖abstract类中的某个方法. 解决方案:我们可以在某个方法前面加上final关键词,可以防止继承的类覆盖它并实现继承类自己的版本. 继承类仍然可以访问和调用这些 ...
- Gamescom2014:中国游戏公司37.com进军西方海外市场
在2014年的德国科隆国际游戏展上.Xsolla曾与37.com聊天.我们讨论了中国公司眼下进军西方市场的战略,谈到营销的最有效方法.游戏货币化,并讨论在欧洲和土耳其的网页游戏的前景. 37wan 能 ...
- mui 监听app运行状态
<!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...
- Odoo/OpenERP 日志配置、使用及实现
当应用处于生产环境时,日志提供了有价值的运行时调试及监控信息,并且,也是一个有用的调试工具对于处于开发阶段的应用来说.此文描述在Odoo8.0中日志的配置.使用及实现 日志配置 Odoo ...
- Js实现AES/RSA加密
1. function aesEncrypt(text, secKey) { var key = CryptoJS.enc.Utf8.parse(secKey); var iv = CryptoJS. ...