07Linux之bash解释器交互式环境特性
7 bash解释器交互式环境特性
7.1 Tab键
- 只能补全命令和文件
7.2 快捷键
- CTRL+C ==》终止前台运行的程序
- CTRL+D ==》退出(相当于exit)
- CTRL+L ==》清屏
- CTRL+a ==》光标移到命令行的行首
- CTRL+e ==》光标移到命令行的行尾
- CTRL+r ==》搜索历史命令
- Alt+. ==》取上条命令最后一个参数(只能在shell里用)
- !$ ==》取上条命令的最后一个参数
7.3 历史命令
7.3.1 查看历史命令
- history
7.3.2 清空历史命令
- history -c
7.3.3 历史命令保存文件
-
cat ~/.bash_history
-
退出登录后才会保存,或直接用history -w写入
-
历史命令默认保存1000条,可修改
/etc/profile中的HISTORY=2000
7.3.4 查找历史命令
- 光标上下键
- CTRL+R # 搜索历史命令(输入一段命令中的关键字,必须是连续的)
- !220 # 执行历史命令中第220条
- !字符串 # 搜索历史命令中一个以xxx字符开头的命令
- !$ # 引用上个命令的最后一个参数
7.4 别名
7.4.1 查看当前系统别名
- alias
7.4.2 建立别名
-
alias 名字='命令' # 临时配置,重启就无,永久需改配置文件
-
例如
alias ccc='ls /etc/sysconfig/network-scripts/'
7.4.3 如何取消别名
-
unalias ls # 取消别名(永久,再用别名需重新配)
-
ls # 临时一次
-
which ls查看绝对路径
用绝对路径
7.5 命令查找优先级
- 绝对路径
- alias
- compound commands
- function函数
- build_in内置命令
- hash哈希
- $PATH环境变量
- error:command not found
7.6 查看帮助信息
7.6.1 man手册
-
常规用法
# 用法 man 命令 # 具体方式 man 手册名 # 例如man ls 可搜索 /-h # 用n N快速定位 1. 按章节查找,常用的是1(命令用法)5(文本规范)8(系统管理命令) /usr/bin/passwd # 命令,修改用户密码 man 1 passwd /etc/passwd # 保存用户信息的文件 man 5 passwd /etc/exports # man exports man 5 exports 2. 按关键字检索(适合记不住手册的全名时使用) man -k "_selinux" # 手册名或手册描述中包含关键字_selinux (从whatis数据库中找 # makewhatis) 3. 在所有章节中查询 man -a passwd # 检索所有passwd man -f passwd
7.6.2 --help
-
常规用法
1. 简单命令 --help 2. 示例 ls --help 用法:ls [选项]...[文件]... ls常用选项 -a # all,查看目录下的所有文件,包括隐藏文件 -l # 长列表显示 -h # human,以人性化方式显示出来 -d # 只列出目录名,不列出其他内容 -t # 按修改顺序排序 -r # 逆序排序 -i # 显示文件的inode号(检索号)
7.6.3 参考文档/配置模块文件
- ls /usr/share/doc/pam-1.1.8/
- firefox ls /usr/share/doc/pam-1.1.8/html/Linux-PAM_SAG.html
7.6.4 官方手册
7.6.5 Baidu、Google
7.7 常用命令
7.7.1 设置主机名
-
查看主机名
hostname
-
修改主机名
vi /etc/hostname # 编辑文件永久修改主机名(需重启)
hostnamectl set-hostname 新名字 # 用命令修改
7.7.2 设置启动级别
- systemctl set-default muilt-user.target # 启动级别为3
7.7.3 设置时间
-
ntp:网络事件协议
ntpdate -u # 手动同步
ntpdate 0.cn.pool.ntp.org # 自动同步
systemctl enable ntpd # 开机自启
# 查看时间 date #以自己的格式显示 date "+%Y-%m-%d %H:%M:%S" # 设置系统时间 date -s "2022-11-12 11:12:13 CTS" # 查看硬件时间 hwclock # 将系统时间写入硬件时间 hwclock -w # 将硬件时间写入系统时间 hwclock -s # 做实验需要改时间 timedatectl set-ntp no
7.7.4 重启
-
重启
shutdown -r 10 # 10分钟后重启 shutdown -r 0 # 立即重启 shutdown -r now # 立即重启 init 6 # 立即重启 reboot # 立即重启
7.7.5 关机
-
关机
shutdown -h 10 # 10分钟后关机 shutdown -h 0 # 立即关机 shutdown -h now # 立即关机 poweroff # 立即关机 halt # 立即关机(需要自己断电关电源) init 0 # 立即关机
7.7.6 取消正在进行的关机或重启
- shutdown -c
7.7.7 注销登录账号
- exit
- logout
- CTRL+d
7.7.8 其他
- cat /etc/redhat-release # 查看操作系统版本
- uname -a # 查看所有消息
- uname -r # 查看内核版本
- which命令 # 查看文件的路径
- 命令1 |命令2 # 命令1把结果放入管道,命令2从管道中取出结果做后续处理