shell命令格式
命令名称 [命令参数] [命令对象]
命令参数类型
- 长格式 如 man -help
- 短格式 如 man -h
命令对象
一般是指要处理的目标
常用shell命令
工作目录切换命令
- pwd
显示当前工作目录 - history
查看历史命令 - cd [目录名称]
切换工作路径参数 作用 - 切换到上一次目录 ~ 切换到当前用户目录 …(两点) 切换到上一级目录 -username 切换到指定用户目录 - ls [参数] [目录]
查看目录中的文件
ls -l 可以查看文件详细信息,如图所示:参数 作用 -a 查看全部文件(包括隐藏文件) -l 查看文件的详细信息
第一项表示文件类型,后三项分别表示文件所属者权限、文件所属组权限,其他用户权限。
文件类型:
文件权限:符号 类型 - 普通文件 d 目录文件 b 块设备文件 c 字符设备文件 s 套接字文件 p 管道文件 l 符号链接 权限项 读 写 执行 字符表述 r w x 数字表示 4 2 1
文本文件编辑命令
-
cat [参数] [文件]
查看较短的纯文本文件参数 作用 -n 显示所有内容和行号 -b 显示不包括空行的内容和行号 -A 显示出“不可见”的符号,如空格,table,换行等 -
more [参数] [文件]
查看较长的纯文本文件参数 作用 -数字 预显示的行数(默认一页) -
head [参数] [文件]
查看纯文本文档的前N行参数 作用 -n 10 显示前10行 -n -10 后10行不显示 -
tail [参数] [文件]
查看纯文本文档的后N行参数 作用 -n 10 显示后10行 -10f 持续刷新显示的内容,显示10行
这几个命令通常用于查看日志信息,使用频率还是挺高的。还可以配合管道符命令来筛选或转换显示内容,更加方便阅读。
如tr命令
- tr [原始字符] [目标字符]
用于转换文本文件中的字符
假如文档或日志是大写内容,没有小写看的直观,我们可以用改命令进行转换。
注:"|"是管道命令操作符,它仅能处理经由前面一个指令传出的正确输出信息。
-
wc [参数] [文本]
用于统计指定文本的行数、字数、字节数等详细信息。参数 作用 -c 显示字节数量 -m 显示字符数量 -l 显示行数量 -L 显示最长行的长度 -w 显示单词计数 -
diff [参数] [文件A] [文件B]
用于比较多个文本的差异参数 作用 -b 忽略空格引起的差异 -B 忽略空行引起的差异
文件目录管理命令
-
mkdir [参数] 目录
创建文件夹 -
cp [参数] 源文件 目标文件
复制文件或目录目标文件是一个目录,会将源文件复制到该目录 目标文件是一个文件,会将源文件覆盖该文件 目标文件不存在,将会复制源文件并修改为目标文件的名称(重命名) -
mv [参数] 文件名 [目标路径|目标文件名
用于移动文件或改名 -
rf [参数] 文件
删除文件或目录参数 作用 -f 忽略警告信息 -i 删除前先询问 -r 删除文件夹 可以使用通配符*来进行批量删除,这就是
rm -rf /*
删库跑路的梗。
文件查询搜索
-
grep [参数] 文件
对文本进行搜索 -
find [查找路径] 查找条件 操作
用于查找文件
文件压缩解压
- tar [参数] [文件]
对文件进行压缩或者解压
常用:参数 作用 -c 创建压缩文件 -x 解开压缩文件 -z 用Gzip压缩或解压 -j 用bzip压缩或解压 -f 目标文件名 -C 指定解压到的目录 命令格式 作用 tar -czvf 压缩包名.tar.gz 文件名 打包并压缩文件 tar -xzvf 压缩包名.tar.gz 解压并展开文件