1.文件管理
<1>查看文件信息:ls(list)
列出目录的内容,类似于DOS下的dir命令。
参数 | 含义 |
---|---|
-a | 显示目录下所有子目录与文件,包括隐藏文件 |
-l | 以列表方式显示文件的详细信息 |
-h | 配合 -l 以人性化的方式显示文件大小 |
1.1 ls
1.2 ls -a (列出隐藏文件)
1.3 ls -l(列出文件的详细信息)
1.4 ls -h
ls -lh(和l搭配,显示文件大小)
1.5 ls 与通配符
通配符 | 含义 |
---|---|
* | 文件代表文件名中所有字符 |
ls te* | 查找以te开头的文件 |
ls *html | 查找结尾为html的文件 |
? | 代表文件名中任意一个字符 |
ls ?.c | 只找第一个字符任意,后缀为.c的文件 |
ls a.? | 只找只有3个字符,前2字符为a.,最后一个字符任意的文件 |
[] | [”和“]”将字符组括起来,表示可以匹配字符组中的任意一个。“-”用于表示字符范围。 |
[abc] | 匹配a、b、c中的任意一个 |
[a-f] | 匹配从a到f范围内的的任意一个字符 |
ls [a-f]* | 找到从a到f范围内的的任意一个字符开头的文件 |
ls a-f | 查找文件名为a-f的文件,当“-”处于方括号之外失去通配符的作用 |
\ | 如果要使通配符作为普通字符使用,可以在其前面加上转义字符。“?”和“*”处于方括号内时不用使用转义字符就失去通配符的作用。 |
ls \*a | 查找文件名为*a的文件 |
<2>输出重定向命令:>
把终端该路径下的内容保存到指定文件中
<3>分屏显示:more
每次只显示一页,按下空格键可以显示下一页,按下q键退出显示,按下h键可以获取帮助
<4>清屏:clear
clear清除当前终端页面上的显示内容
<5>切换工作目录: cd
cd后面可跟绝对路径,也可以跟相对路径。如果省略目录,则默认切换到当前用户的主目录。
命令 | 含义 |
---|---|
cd / | 切换到当前用户的根目录 |
cd或cd~ | 切换到当前用户的主目录(/home/用户目录),登录后默认的目录 |
cd . | 切换到当前目录 |
cd .. | 切换到上级目录 |
cd - | 可进入上次所在的目录 |
如果路径是从根路径开始的,则路径的前面需要加上 “ / ”,如 “ /myDir ”,通常进入某个目录里的文件夹,前面不用加 “ / ”。
for:进入到myDir中tomcat8文件夹下bin目录
for:进入myDir文件夹下
<6>显示当前路径:pwd
<7>创建目录:mkdir
创建一个新的目录,参数-p可递归创建目录。
递归创建目录,文件夹后面加-p
<8>删除目录:rmdir
rmdir命令删除一个为空目录,目录中有文件或文件夹,则删除失败
<9>删除文件:rm
rm删除文件或目录
使用rm命令要小心,文件删除后不能恢复。为了防止文件误删,可以在rm后使用-i参数,删除时会进行二次确认的提示。
参数 | 含义 |
---|---|
-i | 以进行交互式方式执行 |
-f | 强制删除,忽略不存在的文件,无需提示 |
-r | 递归地删除目录下的内容,删除文件夹时必须加此参数 |
<10>查看或者合并文件内容:cat
1.1查看文件内容
1.2合并文件内容
<11>拷贝文件:cp
将A文件或目录复制到B文件或目录中
选项 | 含义 |
---|---|
-a | 该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有属性。 |
-f | 已经存在的目标文件而不提示 |
-i | 交互式复制,在覆盖目标文件之前将给出提示要求用户确认 |
-r | 若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名。 |
-v | 显示拷贝进度 |
<12>移动文件:mv
选项 | 含义 |
---|---|
-f | 禁止交互式操作,如有覆盖也不会给出提示 |
-i | 确认交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件 |
-v | 显示移动进度 |
<13>备份管理:tar
是Unix/Linux中最常用的备份工具,此命令可以把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据。
tar命令很特殊,其参数前面可以使用“-”,也可以不使用。
常用参数:
参数 | 含义 |
---|---|
-c | 生成档案文件,创建打包文件 |
-v | 列出归档解档的详细过程,显示进度 |
-f | 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后 |
-t | 列出档案中包含的文件 |
-x | 解开档案文件 |
-cvf 打包
-xvf解压
<14>文件压缩解压:gzip
tar与gzip命令结合使用实现文件打包、压缩。
tar只负责打包文件,但不压缩.
用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。
选项 | 含义 |
---|---|
-d | 解压 |
-r | 压缩所有子目录 |
<15>文件压缩解压:zip、unzip
压缩文件:zip [-r] 目标文件(没有扩展名) 源文件
解压文件:unzip -d 解压后目录文件 压缩文件
与上面一致
<16>管道:|
linux中一行只能有一个命令,如果想放多个命令组合,需要用管道
一个命令的输出可以通过管道做为另一个命令的输入。
可以理解现实生活中的管子,先把前一个命令打印出来的内容管塞进去,然后后一个命令从管中取出来。
<17>建立链接文件:ln
类似于Windows下的快捷方式。
链接文件分为软链接和硬链接。
软链接
ln -s 源文件 链接文件
a-修改任意一个文件,都可以 b-源文件删除则软链接失效 c-删除了链接文件,源文件还可查看或编辑
硬链接:硬链接只能链接普通文件,不能链接目录。
ln 源文件 链接文件
a- 删除了源文件,硬链接还可查看或编辑 b-一个文件两个名称在用
<18>文本搜索:grep
对文本文件进行模式查找。如果匹配到,打印包匹配的所有行。
grep [-选项] ‘搜索内容串’文件名
常用选项说明:
选项 | 含义 |
---|---|
-v | 显示不包含匹配文本的所有行(相当于求反) |
-n | 显示匹配行及行号 |
-i | 忽略大小写 |
<19>查找文件:find
在特定的目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件
命令 | 含义 |
---|---|
find ./ -name test.sh | 查找当前目录下所有名为test.sh的文件 |
find ./ -name '*.sh' | 查找当前目录下所有后缀为.sh的文件 |
find ./ -name "[A-Z]*" | 查找当前目录下所有以大写字母开头的文件 |
find /tmp -size 2M | 查找在/tmp 目录下等于2M的文件 |
find /tmp -size +2M | 查找在/tmp 目录下大于2M的文件 |
find /tmp -size -2M | 查找在/tmp 目录下小于2M的文件 |
find ./ -size +4k -size -5M | 查找当前目录下大于4k,小于5M的文件 |
find ./ -perm 0777 | 查找当前目录下权限为 777 的文件或目录 |
find和grep区别
find是找文件的位置在哪,grep是找文件的内容