1.结合通配符
- “?”:代表任意一个字符,有且一个字符
- “*”:代表任意数个字符,可以是0个或者1个或者多个
- “[]”:表示可以匹配字符组中的任意一个字符
[abc]、[a-f]
2.ls的常用选项
-l 显示文件或目录的文件属性
-a 显示所有文件,包括“.”开头的隐藏文件
-A 和-a差不多,除了表示当前目录的“.”和父目录的“..”
-h 更人性化的显示文件大小
-R 以递归方式显示指定目录或当前目录的所有子目录
--color 颜色区分不同文件,深蓝目录;黑白文件;绿色执行 文件,黄色设备文件;红色压缩文件
- -i:显示文件和目录的inode号。
3.用ls-l命令查看某一个目录会得到一个7个字段的列表
-rwxrwxr-- 1 root root 76207-2918:19 exit
- 第1字段:文件属性字
第一个字符代表文件的类型:
" - "表示文件是普通文件
" d "表示文件是目录
" l "表示文件是软链接文件。类似于windows下的快捷方式
- 第1字符的后面9个字母表示该文件或目录的权限位:
r表示读(查、下)、w表示写(增、改、删、传)、x表示执行(运 行文件、切换目录)
1-3文件拥有者(属主)的权限,
4-6文件所属组拥有的权限,
7-9三个表示其他用户拥有的权限。
- 第2字段:文件硬链接数
如果一个文件不是目录,此时这一字段表示这个文件所具有的硬 链接数如果是一个目录,则第2字段表示该目录所含子目录的个 数。
建一个空目录,这个目录的第二字段就是2,表示有两 个子目录。
- 第3字段:文件\目录拥有者
- 第4字段:文件\目录拥有者所在的组
- 第5字段:文件所占用的空间(默认以字节为单位)
如果是一个目录,则表示该目录的大小,而不是目录以及它下面 的文件的总大小。Linux系统中一切皆文件,因此目录也是一种文 件。
- 第6字段:文件\目录最近访问或修改时间
- 第7宇段:文件名
如果是一个符号链接(软链接文件),那么会有一个“->”箭头符 号,后面根一个它指向的文件名
4.设置别名-alias
- 通过别名机制简化常用的、比较长的命令
alias命令别名=‘命令‘ (=两侧不能有空格)
- 示例
设置myls为ls -alh的别名
alias myls=‘ls -alh‘ (不能有空格)
- 取消别名
unalias命令别名
5.统计目录及文件空间占用情况-du
- 统计指定目录(或文件)所占用磁盘空间的大小
Du [选项] [文件或目录.…]
选项 |
说明 |
-a |
显示目录中所有文件大小 |
-h |
以易读的方式显示文件大小(默认KB;不显示) |
-s |
显示总计大小 |
--max-depth=n |
统计所有小于等于第n层的目录的总大小 |
选项-a和-s不可同时使用
6.创建新目录-mkdir创建新的空目录
- Mkdir [选项] 目录位置及名称...
-p:一次性创建嵌套的多层目录
- 示例
在当前目录下创建名为public_html的子目录
mkdir public_html
创建目录laa,在laa目录下创建子目录bb,在/aa/bb目录下创建 子目录cc
mkdir -p /aa/bb/cc
mkdir -p aa bb cc
mkdir -p {aa/bb/cc}
7.创建空文件-touch命令
- 更新文件的时间标记
- 经常用于创建多个新的空文件touch文件...
- 示例
创建两个空文件,文件名分别为aa.txt和bb.txt
touch aa bb
touch {a,b}.txt
8.创建链接文件-In(软链接)
- 为文件或目录建立链接文件,类似于Windows系统的快捷方式
- 链接文件类型
软链接(又称为符号链接)
硬链接
- ln[ -s ] 源文件或目录...链接文件或目标位置示例
ln -s /bin/bzip2/bin/wx/
9.复制文件或目录-cp
- 将需要复制的文件或目录(源)重建一份,并保存为新的文件或目录
cp [选项]... 源文件或目... 目标文件或目...
选项 |
说明 |
-f |
直接强制复制 |
-i |
提示后复制 |
-p |
复制后文件属性不变 |
-r |
递归复制文件及目录(复制目录时必须使用) |
10.删除文件或目录-rm
- 删除指定的文件或目录
Rm [选项] 要删除的文件或目录...
常用选项
选项 |
说明 |
-f |
删除文件或目录时不进行提醒,而直接强制删除。
|
-i |
-i:删除文件或目录时提醒用户确认。(y表示删除,n表示不删除) |
-r |
用于删除目录,递归删除整个目录树(应谨慎使用)。 |
注:不要直接删除系统中已有的目录或配置文件,以避免出现意 外故障。
例:
rm -rf /etc/yum.repos.d/*
删除目录下文件时建议最好先切换到目录下再执行rm -rf命令
cd /etc/yum.repos.d/
rm -rf ./*
切记根目录 rm -rf ./* 高危操作
11.移动文件或目录-mv
- 将指定的文件或目录转移位置
- 如果目标位置与源位置相同,则相当于执行重命名操作
mv [选项]...源文件或目录... 目标文件或目录
示例
mv mytouch mkfile
mv mkfile public_html/
- mv命令只能单个文件重名名,可使用rename命令批量修改文件名
Renam 旧字符 新字符 目标文件
示例
rename jpg gif *.jpg
12.查找命令文件存放目录-which
- 搜索范围由环境变量PATH决定(echo $PATH)
- which命令|程序名 //默认当找到第一个目标后不再继续查找
- which -a命令|程序名 //在所有搜索路径中查找
- 示例
which ls
which history
使用which查找内部命令时,将找不到对应的程序
13.查找文件或目录-find
- 采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查找
find [查找范围][查找条件表达式]
范围:查找文件或子目录的目录位置
条件:查找条件类型
常用查找条件类型
查找类型 |
关键字
|
说明 |
按名称查找
|
-name
|
根据目标文件的名称进行查找,允许使用“*” ”及” “?”通配符根据目标文件的大小进行查找
|
按文件大小查找 |
-size |
根据目标文件的大小进行查找 一般使用“+”、“-”号设置超过或小于指定的大小作为查找条件常用的容量单位包括kB(注意k是小写)、MB、GB |
按文件属主查找 |
-User |
根据文件是否属于目标用户进行查找根据文件的类型进行查找
|
按文件类型查找 |
-type |
文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等块设备文件(b):成块读取数据的设备(硬盘,内存,光驱) 字符设备文件(c):按单个字符读取数据的设备(键盘,鼠标) |
使用find命令实现多个查找条件各表达式之间使用逻辑运算符
"-a”表示而且(and)
“-o”表示或者(or)
示例
find /boot -size +1024k -a -name "vmlinuz*"
find /boot -size +1024k -o -name "vmlinuz*"
- find之exec 用法
-exec参数后面跟的是Linux命令,它是以分号“;”为结束标志,由 于各个系统中分号会有不同的意义,因此在分号前面加上反斜杠 转义符\”。
{}代表前面find查找出来的文件名。
find命令匹配到了当前目录下的所有普通文件,并在-exec选 项中使用ls -l命令将它们列出
find ./ -type f -exec ls -l {} \;
本章总结
- Shell是一种特殊程序
- Linux命令的分类、格式及使用方法Linux常用命令
- 查看及切换目录(pwd、cd、ls、du)
- 创建目录和文件(mkdir、touch、In)
- 复制、删除、移动目录和文件(cp、rm、mv)
- 查找目录和文件(which、find)