VMware16+红帽
目录
Shell环境的切换
临时切换:直接执行其他Shell程序
更改用户登录Shell:
需修改 /etc/passwd 文件中用户记录的最后一个字段
或执行:usermod -s Shell程序路径 用户名
Linux命令
用于实现某一类功能的指令或程序
命令的执行依赖于解释器程序(ex:/bin/bash)
分类:内部命令(属于Shell解释器的一部分)、外部命令(独立于Shell解释器之外的程序文件)
Linux命令的通用命令格式
命令字 [选项] [参数]
选项:用于调节命令的具体功能
- 以“-” 引导短格式选项(单个字符),例如 “-l”
- 以“--”引导长格式选项(多个字符),例如“--color”
- 多个短格式选项可以写在一起,只用一个“-”引导,例如“-al”
参数:命令操作的对象,如文件、目录名等
命令行编辑的几个辅助操作
- Tab键:自动补齐
- 反斜杠“\”:强制换行
- 快捷键 Ctrl+U:清空至行首
- 快捷键 Ctrl+K:清空至行尾
- 快捷键 Ctrl+L:清屏
- 快捷键 Ctrl+C:取消本次命令编
获得命令帮助
内部命令help
查看Bash内部命令的帮助信息
命令的“--help” 选项
适用于大多数外部命令
使用man命令阅读手册页
使用“ ↑ ”、“ ↓ ”方向键滚动文本
使用Page Up和Page Down键翻页
按Q或q键退出阅读环境、按“/”键后查找内容
使用info命令阅读信息页
文件和目录管理命令
目录操作命令
命令 | 解释 | 格式 |
---|---|---|
pwd | 查看当前目录位置 | |
cd | 切换文件目录(绝对路径,相对路径) | cd [目录位置] |
ls | 显示目录内容 | ls [选项]... [目录或文件名] |
mkdir | 创建新的目录 | mkdir [-p] [/路径/]目录名 |
du | 统计目录及文件的空间占用情况 | du [选项]... [目录或文件名] |
ls:常见命令选项:
- -l:以长格式显示
- -a:显示所有子目录和文件的信息,包括隐藏文件
- -d:显示目录本身的属性
- -A:类似于‘-a’,但不显示 ‘ . ’ 和 ‘ .. ’ 目录的信息
- -h:以更易读的字节单位(K,M等)显示信息
- -R:递归显示内容
- --color:以颜色区分不同类型文件
星号通配符 # ls install.log*
问号通配符 # ls -lh install.???
定义命令别名 # allas myls='ls -alh'
du:常用命令选项:
- -a:统计时包括所有的文件,而不仅仅只统计目录
- -h:以更易读的字节单位(K、M等)显示信息
- -s:只统计每个参数所占用空间总的大小
文件操作命令
命令 | 解释 | 格式 |
---|---|---|
touch | 新建空文件,或更新文件时间标记 | touch 文件名 |
file | 查看文件类型 | file 文件名 |
cp | 复制文件或目录 | cp [选项]... 源文件或目录… 目标文件或目录 |
rm | 删除文件或目录 | rm [选项]... 文件或目录 |
mv | 移动(Move)文件或目录 | mv [选项]... 源文件或目录… 目标文件或目录 |
which | 查找Linux命令文件并显示所在的位置,搜索范围由 PATH 环境变量指定 | which 命令或程序名 |
find | 用于查找文件或目录 | find [查找范围] [查找条件] |
ln | 为文件或目录建立链接(Link) | ln [-s] 源文件或目录… 链接文件或目标目录 |
cp:常用命令选项
- -r:递归复制整个目录树
- -p:保持源文件的属性不变
- -f:强制覆盖目标同名文件或目录
- -i:需要覆盖文件或目录时进行提醒
rm命令:常用命令选项
- -f:强行删除文件或目录,不进行提醒
- -i:删除文件或目录时提醒用户确认
- -r:递归删除整个目录树
- -v:显示指令的详细执行过程
find命令:常用查找条件
- -name:按文件名称查找
- -size:按文件大小查找
- -user:按文件属主查找
- -type:按文件类型查找
ln命令:常用命令选项
- -s:建立符号链接文件(省略此项则建立硬链接)
关于链接文件
- 符号链接:指向原始文件所在的路径,又称为软链接
- 硬链接:指向原始文件对应的数据存储位置
- 不能为目录建立硬链接文件
- 硬链接与原始文件必须位于同一分区(文件系统)中
文件内容操作命令
命令 | 解释 | 格式 |
---|---|---|
cat | 显示出文件的全部内容 | |
more | 全屏方式分页显示文件内容 交互操作方法:按Enter键向下逐行滚动、按空格键向下翻一屏、按b键向上翻一屏 按q键退出 | |
less | 与more命令相同,但扩展功能更多 | |
head | 查看文件开头的一部分内容(默认为10行) | head -n 文件名 |
tail | 查看文件结尾的少部分内容(默认为10行) | tail -n 文件名 tail -f 文件名 |
wc | 统计文件中的单词数量(Word Count)等信息 | wc [选项]... 目标文件... |
grep | 在文件中查找并显示包含指定字符串的行 | grep [选项]... 查找条件 目标文件 |
wc:常用命令选项
- -l:统计行数
- -w:统计单词个数
- -c:统计字节数
grep命令:常用命令选项
- -i:查找时忽略大小写
- -v:反转查找,输出与查找条件不相符的行
查找条件设置
- 要查找的字符串以双引号括起来
- “^……”表示以……开头,“……$”表示以……结尾
- “^$”表示空行
ex:
打印以字母 r 开头的所有的用户名 grep ‘^r’ /etc/passwd
打印以字母 g 开头的所有的用户名 grep ‘^g’ /etc/passwd
打印其 shells (最后一列) 为 /sbin/nologin的所有账户 grep ‘/sbin/nologin$’ /etc/passwd
打印 UID or GID (第三或第四列) 为 0 的所有账户 grep ‘:0:’ /etc/passwd
打印 UID or GID 在 10-19 之间的所有账户 grep ‘:1[0-9]:’ /etc/passwd
归档及压缩命令
命令 | 解释 | 格式 |
---|---|---|
gzip bzip | 解开压缩文件 | 制作压缩文件: gzip [-9] 文件名... bzip [-9] 文件名... |
gzip bzip2 | 解开压缩文件 | 解开压缩文件: gzip -d .gz格式的压缩文件 bzip2 -d *.bz2格式的压缩文件 |
tar | 制作归档文件、释放归档文件 | 制作:tar [选项]... 归档文件名 源文件或目录 解开:tar [选项]... 归档文件名 [-C 目标目录] |
gzip、bzip2:常用命令选项
- -9:表示高压缩比,多在创建压缩包时用
- -d:用于解开已经压缩过的文件
tar:常用命令选项
- -c:创建 .tar 格式的包文件
- -x:解开.tar格式的包文件
- -v:输出详细信息
- -f:表示使用归档文件
- -p:打包时保留原始文件及目录的权限
- -P:保持原始文件的绝对路径
- -t:列表查看包内的文件
- -C:解包时指定释放的目标文件夹
- -z:调用gzip程序进行压缩或解压
- -j:调用bzip2程序进行压缩或解压
正则表达式
管道和重定向
重定向允许将标准输出或错误消息从程序重定向到文件,以进行保存或稍后分析,或禁止其在终端显示。还可以通过文件而非键盘将输入读取至命令行程序
管道允许叫标准输出信息从程序连接至另一个程序的输入,每个程序作用于前一个程序的输出。
Bash的标准输入输出
交互式硬件设备
- 标准输入:从该设备接收用户输入的数据
- 标准输出:通过该设备向用户输出数据
- 标准错误:通过该设备报告执行出错信息
类型
设备文件
文件描述编号
默认设备
标准输入
/dev/stdin
0
键盘
标准输出
/dev/stdout
1
显示器
标准错误输出
/dev/stderr
2
显示器
改变标准输入、标准输出、标准错误的方向
ex:
将标准输出重定向到文件 $ ls /etc/ > etcdir
将标准输出重定向追加到文件 $ ls /etc/sysconfig/ >> etcdir
将错误输出重定向到文件 $ nocmd 2> errfile
将标准输出和错误输出重定向到文件 $ ls afile bfile &> errfile
Bash的管道操作
管道操作符号“|”
连接左右两个命令,将左侧的命令输出的结果,作为右侧命令的输入(处理对象)
格式:cmd1 | cmd2 [... | cmdn]
文本编辑器
文本编辑器的作用:
创建或修改文本文件
维护Linux系统中的各种配置文件
Linux中最常用的文本编辑器:
vi:类Unix系统中默认的文本编辑器
vim:vi编辑器的增强版本,习惯上也称为vi
三种工作模式:命令模式、输入模式、末行模式
不同模式之间的切换
命令模式相关操作:
文本内容查找:
末行模式相关操作:
保存文件及退出vi编辑器:
文件内容替换: