索引
1.ls
语法: ls 选项 目录或文件
功能:对于目录,该命令列出该目录下的所有子目录与文件,对于文件,该命令列出文件名及其他信息。
-
ls -a:列出目录下的所有文件,包括隐藏文件(隐藏文件以.开头,eg .test)
任意目录下都存在两个隐藏文件 .(当前路径)…(上级路径)
作用:执行当前路径 ./a.out
返回上层目录:cd … -
ls -l:列出文件的详细信息
简化指令: ls -l = ll -
ls -d将目录像文件一样显示,而不是显示其下的文件,eg ls -d指定目录
-
ls -i 输出文件节点的索引信息
-
ls -k 以k字节的形式表示文件大小
-
ls -s:以块大小为单位列出所以文件的大小
-
ls -n:以数字的UID,GID代替表示
-
ls -R列出所有子目录下的文件
-
ls -1:一行只输出一个文件
2 .pwd
语法: pwd
功能: 显示用户当前所在的目录
3.cd
在Linux中,磁盘上的文件和目录被组成一个目录树,每个节点都是目录或者文件,每个节点都是一棵多叉树
语法: cd 目录名
功能: 改变工作目录,将当前工作目录改变到指定的目录下
4.touch
语法: touch 选项 文件
功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
目前个人只会用touch创建文件
常用选项:
1)-a 或 --time=atime 或 --time=access 或 --time=use 只更改存取时间。
2)-c 或 --no-create 不建立任何文档。
3)-d 使用指定的日期时间,而非现在的时间。
4)-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
5)-m 或 --time=mtime 或–time=modify 只更改变动时间。
6)-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
7)-t 使用指定的日期时间,而非现在的时间。
5.mkdir
语法 mkdir 选项 dirname
语法: 在当前目录下创建一个名为”dirname“的目录
常用选项 :-p,-parents 可以是一个路径名称,此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,可以一次创建多个目录
6.rmdir
rmdir是一个与mkdir相对应的命令,mkdir是建立目录,而rmdir是删除命令。
语法: rmdir 选项 dirName
适用对象: 具有当前目录操作权限的所有者
功能: 删除空目录
常用选项
-p :当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除,可以理解为递归删除
7. rm
rm命令可以同时删除文件或目录
语法: rm 选项 文件名/目录名
适用对象: 所有使用者
功能: 删除文件或目录
常用选项
-f 即使文件属性是只读(即写保护)也可以直接删除
-i 删除前逐一确认
-r 删除目录及其下所有文件,相当于也是递归删除
8.man
Linux的命令有很多参数,记不住,我们可以通过查看练级手册获取帮助。访问Linux手册页的命令是man
语法: man 选项 命令
常用选项
-k 根据关键字搜索联机帮助
-a 将所有章节的都显示出来
num 只在第num章节找
手册共分为8章
9.cp
语法: cp 选项 源文件或目录 目标文件或目录
功能: 复制文件或目录
常用选项
-f 强行复制文件或目录,不论目的文件或目录是否存在
-i 如果文件已经存在,覆盖文件之前先询问用户
-r/R递归处理,将指定目录下的文件与子目录一并处理,若源文件或目录的形态不属于目录或符号链接,则一律视为普通文件处理
使用通配符*
10.mv
语法:mv 选项 源文件或目录 目标文件或目录
功能:识mv指令当中的两个参数不同而不同
- mv指令完成文件重命名或目录重命名
- mv移动文件
常用选项
-f 如果目标文件已经存在,不会询问而直接覆盖
-i 若目标文件存在,则会询问是否覆盖
11.cat
语法: cat 选项 文件
**功能:**查看文件内容
常用选项
-b 对非空行输出行编号
-n 对输出的所有行编号
-s不输出多行空行
12.more
cat指令适用于查看内容较少的文件,我们若是要查看海量信息文件,就要使用more指令
打印一万行的脚本
cnt=1;while [ $cnt -le 10000 ]; do echo "hello zjt $cnt"; let cnt++; done >file.txt
语法:more 文件
功能:查看目标文件的内容
常用选项:
-n 对输出的所有行编号
q 退出more
注意: more指令只能通过按回车进行下翻操作,无法进行上翻操作,并且more指令在查看之前会先加载整个文件
13.less
上述more只能进行下翻操作,而less支持上下翻,推荐使用less
因为less可以帮助我们查看文本,可以用它来进行日志的查看
语法: less 选项 文件
功能: 与more类似,但使用less可以随意浏览文件,而more仅能向前移动,不能向后移动,且less在加载之前不会加载整个文件。
常用选项:
-i 忽略搜索时的大小写
-N 显示每行的行号
/字符串:向下搜索字符串的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与/或?有关)
N:反向前一个搜索(与/或?有关)
q:quit退出
14.grep(行文本过滤工具)
语法: grep[选项]搜索字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来
常用选项:
-i:忽略大小写的不同,所以大小写视为相同
-n:顺便输出行号
-v:反向选择,亦即显示出没有“搜索字符串”内容的那一行
15.>输出重定向 >>追加重定向
“>”:输出重定向:本来应该写入到显示器的内存,把它写入到文件中,会清空原始文件的内容
“>>”:追加重定向:同上,但不会清空原始内容,而是在原始文件末尾进行新增式的增容
16.head/tail
用来显示文件开头或者结尾
常用选项:
-n<行数>显示的行数
其中tail
-f :此选项可以方便的查阅正在改变的日志文件,tail -f filename 会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容
那么该如何显示文件中间的内容呢?
|:油管
数据是互联网中的资源,管道的本质就是将前一批数据的输出作为下一批数据的输入,将任务做成流水线的方式依次进行处理。
17.与时间相关的指令
date 指定格式显示时间:date +%Y:%m:%d
常用选项
%H:小时
%M:分钟
%S:秒
%X:相当于 %H:%M:%S
%d:日
%m:月
%Y:完整年份
%F:相当于%Y:%m:%d
%s:表示时间戳,是从1970年1月1日开始所经过的秒数,不考虑闰秒
18.cal
用来显示阳历
语法:cal 参数 月份 年份
功能:用来查看日历等时间信息,一个参数表示年份,两个参数表示月份和年份
常用选项:
-3:显示系统前一个月,当前月,下一个月的日历
-j:显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
-y:显示当前年份的日历
19.打包压缩命令
我们为什么要打包压缩?
- 1.节约空间
- 因为一个软件不只是一个文件,有可能又成千上百个文件,如果不用压缩包,直接上传的话,万一漏掉了一两个文件那么最后软件安装的时候也会出错,但是如果打包成压缩包,他们的整体是1,但凡漏掉一个就会出现解压失败,同时利用打包压缩还可以节约空间。此时网络传输和各种部署是比较方便的。
(1).zip/unzip指令
语法: zip压缩文件.zip 目录或文件
功能: 将目录或文件压缩成zip格式
常见选项:
-r:递归处理,将指定目录下的所有文件和子目录一并处理
-d:解压指定到哪一个路径下
(2)tar
语法: tar [-cxtzjvf] 文件与目录…参数
常用选项:
-c:创建一个压缩文件
-x:解开一个压缩文件
-t:查看压缩文件/目录里面的文件!
-z:检查是否具有gzip的属性?是否需要用gzip压缩?
-j:检查是否具有bzip2的属性?是否需要用bzip2压缩
-v:压缩的过程中显示文件!
-f:使用档名,在f之后不用接参数
-C:解压到指定目录