介绍大纲
- shell
- 命令行格式
- 编辑Linux命令行的辅助操作
- 如何获取命令帮助
- 查看当前的工作目录-pwd
- 切换工作目录-cd
- 列表显示目录内容-ls
- 设置别名-alias
- 创建新的目录-mkdir
- 创建空文件-touch
- 创建链接文件-ln
- 复制文件或目录-cp
- 删除文件或目录-rm
- 移动文件或目录-mv
- 查找命令/文件存放位置=which
- 查找文件或目录-find
- 查看文件内容-cat
- 查看文件内容-more
- 查看文件内容-less
- 查看文件内容-head和tail
- 统计文件内容-wc
- 检索和过滤文件内容-grep
- 压缩命令gzip和bzip2
- 压缩命令gunzip和bunzip2
- 归档命令-tar
Shell*
Linux系统中运行的一种特殊程序
- 在用户和内核之间充当“翻译官”
- 用户登录Linux系统时,自动加载一个Shell程序
- Bash是Linux系统中默认使用的Shell程序
- 文件位于/bin/bash
命令行格式
通用的命令行使用格式
- 命令字(空格)[选项](空格)[参数]
- [ ]为可选的意思
- 参数:1.命令字的处理对象 2.可以是文件名,目录(路径)名活用户名等内容 3.个数可以是零到多个
- 编辑Linux命令行的辅助操行
- Tab键自动补全
- 反斜杠“\”:强制执行
- ctrl+u组合键:清空至行首
- ctrl+k组合键:清空至行尾
- ctrl+l组合键:清屏
- ctrl+c组合键:取消本次命令
获取命令帮助的方法 - 内部命令help
查看shell内部命令的帮助信息 - 命令的“–help”选项
适用于大多数Linux外部命令 - 使用man命令阅读手册页
使用Page Up和Page Dawn或滚轮 翻动说明信息
按q或Q退出阅读环境
按/键查找内容
查看当前的工作目录-pwd - 显示用户当前所在的工作目录位置
- 示列:[root@local host]# pwd
- /root(系统反馈的信息)
切换工作目录-cd
将用户工作目录更改到其他位置
- 格式:cd(空格)目标位置:切换到目标位置
- cd(空格)~ :若不指定位置 切换到当前用户的宿主目录
- cd :同上
- cd(空格)-:切换到上一次执行cd命令之前所在的目录
- cd (空格)/:切换到根目录下
绝对路径:完整路径(从根目录开始的路径)
相对路径:从当前路径出发到达的目标路径 - “.”当前路径 “. .”当前路径的上一级路径“. ./. .”当前路径的上一级路径的上一级路径
表现形式:
1.直接使用目录名和文件名:表示当前目录中的子目录,示列:grub.conf
2.以一个点号“.”开头:表示当前的工作目录作为起点,示列:./grub.conf
3.以两个点号“. .”开头:表示以当前的工作目录的上一级为起点(父目录)示列:. ./rmlinuz
4.以“用户名”形式开头:表示以指定用户的宿主目录作为起点,示列:teacher
列表显示目录内容-ls
格式:ls(空格)[选项](空格)[文件或目录]
- 常用选项:
- -l:单列输出
- -a:不隐藏任何以“.”开头的项目
- -A:显示“.”和“…”以外的所有文件
- -H:与-l一起使用以易于阅读的方式列出
- -d:将目录名像其他文件一样列出 而不列出内容
- -R:递出列出全部目录的内容,大文件靠前
- –color:着色
设置别名-alias
通过别名机制简化常用的,比较长的命令
格式:alias 命令别名=命令
- 示列:设置myls为ls-alh的别名
alias myls=“ls -alh”
统计目录及文件空间占用情况-du
统计指定命令或文件所占用磁盘空间的大小
- 格式:du(空格)[选项](空格)目录或者文件名
- 选项:du -a/-h/-s
- 示列:统计出/var/log目录所在占用的空间大小:du -sh/var/log/-a
创建新的空目录-mkdir
格式:mkdir(空格)[选项](空格)目录位置及名称
- 选项 -p 一次性创建镶套的多层目录
- 示列:1.在当前目录下创建public_html子目录
mkdir public_html(父目录不存在 需要加-p)
2.创建目录/aa 在/aa的目录下bb,在/aa/bb目录下创建cc目录:mkdir -p /aa/bb/cc]
创建空文件命令-touch
更小文件的时间标记
- 经常用于创建多个新的空文件
- touch 文件…(开头带上/代表根目录下创建 不带则为当前目录)
- 示列:touch /root/a/b
创建链接文件-ln
为文件或目录建立链接文件,类似Windows系统的快捷方式
- 链接文件类型
软链接:又称符号链接 会创建一个访问的快捷方式,当删除源文件时,链接文件失效
硬链接:会创建一个文件,删除源文件对链接没有影响 - 格式:ln [选项] 源文件或目录… 链接文件或目标位置
- 示列:硬链接:ln -s /bin/bzip2/bin/wx/
复制文件或目录-cp
将需要复制的文件或目录(源)重建一份,并保存新的文件和目录
- 格式:cp [选项] 源文件或目录 目标文件或目录
- 常用选项:
-f:覆盖目标同名文件或目录时不进行提醒,直接强制复制
-i:覆盖目标同名文件或目录时提醒用户确认
-p:复制保持源文件的权限,属主及时间标记等属性不变
-r:复制目录时必须使用,递归复制目录,
删除文件或目录-rm
删除指定的文件或目录
- 格式:rm [选项] 要删除的文件或目录
- 常用选项:
-f:不带提示
-i:带提示
-r:删除目录 - 示列:rm -rf public_html/grub/
rm -i public_html/grub/
移动文件或目录-mv
将指定文件或目录转移位置
- 如果目标位置与源位置相同
- 格式:mv [选项] 源文件或目录 目标或目录
- 示列:mv mytouch mkfile
mv mkfile public_html/
查找命令/文件存放目录-whwich
搜索范围由环境变量PATH决定(exho ¥PATH)
- 格式:which 命令/程序
- 示列:which ls
which cd
查找文件或目录-find
采用递归方式,根据目标的名称,类型,大小等不同属性进行精细查找
- 格式:find [查找范围] [查找条件表达式]
- 常用查找选项:
-name:按名称查找:根据文件的名称进行查找,允许使用“*”及“?”等通用符
-size:按文件大小查找:根据文件大小进行查找(kB,MB,GB) 一般用+和-号超过或小于指定大小
-user:按文件属主查找:根据文件是否属于目标用户进行查找
-type:按文件类型查找:根据文件类型包括普通文件(f)目录(d)块设备文件(b)字符设备文件(c)等
使用find命令实现多个查找条件 - 各表达式之间使用逻辑运算符
- “-a”表示而且(and)
- “-o”表示或者(or)
- 示列:find /boot -size +1024k -a -name “rmliunz*”
- find/boot -size +1024k -o -name “rmlinuz*”
查看文件内容命令-cat
显示出文件的内容“”
- 格式:cat [选项] 文件名
- 示列:
cat /etc/hosts
cat /etc/sysconfig/network
查看文件内容命令-more
全屏的方式分页显示文件内容
- 格式:more [选项] 文件名
- 交互方式
按Enter键向下逐行滚动
按空格键向下翻一页
按b键想上翻一屏
按q键退出
查看文件内容命令-less - 与more命令相同,但扩展功能更多
- 交互方式:Page Up和Page Down向上下翻
- “/”键查找 “n”键想下查找 “N”向上查找
查看文件内容head和tail命令
head命令用途:查看文件开头的一部分内容(默认10行)
- 格式:head -n 文件名(n为数字指定看多少行)
- tail命令用途:查看文件结尾的一部分内容
- 格式:tail -n 文件名
- tail -f 文件名
- 注:tail -f filename会把filename文件里最尾部的内容显示在屏幕上,并且不断刷新,只有filename更新就可以看到最新的文件内容
统计文件内容命令-wc
统计文件中单词数量
- 格式:wc [选项] 目标文件
- 常用选项
-l:统计行数
-w:统计单词
-c:统计字节数 - 示列:wc -wcl ntp.conf
检索和过滤文件内容命令-grep
在文件中查找并显示包含指定字节串的行
- 格式:grep [选项] 查找条件 目标文件
- 常用命令选项
-i:查找时忽略大小写
-v:反转查找,输出月条件不符的行(过滤) - 查找条件设置
要查找的字符串以双引号括起开(多重筛选不用)
“^…”表示以…开头,“…$”表示以…结尾,“ ^ $ ”表示空行
多级过滤示列:grep -v ^# ntp.conf | grep -v ^$ | grep -v ^server
~~
压缩命令gzip和bzip2
~~
- 制作压缩文件和解开压缩文件
- 格式:压缩:gzip [-9] 文件名 bzip2 [-9] 文件名
- 解压:gzip -d 文件名 或者 bzip2 -d 文件名
- 常用命令:
-9:深度压缩
-d:解压缩
压缩命令gunzip和bunzip2命令
gunzip命令
- gunzip等价于gzip -d
- 压缩示列:gunzip mkfile
- 解压示列:gzip -d mkfile.gz
- bunzip2命令
- bzip2和bunzip2命令用法和gzip和gunzip命令基本相同
归档命令-tar
制做归档文件,释放归档文件
- 格式:
tar [选项] 归档文件名 源文件或目录
tar [选项] 归档文件名 [-C 目标目录] - 常用选项
-c:建立打包文件
-t:查看打包文件的内容
-x:解压缩
-j:解压缩bzip2的文件
-z:解压缩gzip的文件
-v:显示压缩和/解压缩的过程
-f:要处理的文件名
-C:解压缩到指定目录
-p:保留源文件属性不变 - 示列:
tar zcvf apache.tar.gz /root /etc
tar zxcf apache.tar.gz -C /opt