第11章 shell
所属:第四部分 环境 来源:Linux命令速查手册
shell本身也提供很多实用功能,提升日常操作效率。本章介绍命令历史和别名两大功能。
11.1 查看命令行历史
history显示之前执行过的命令历史记录。
默认保存数量由 HISTSIZE 变量控制(通常是500或1000条)。
历史文件位置:~/.bash_history
11.2 再次运行最近运行过的命令
!!重复上一条命令。
常用场景(需要sudo时):
apt update
# 报错权限不够
sudo !!11.3 使用数字再次运行以前运行过的命令
!123执行历史中第123条命令。
先用 history 查看编号。
11.4 使用字符串再次运行以前运行过的命令
!ls执行最近一条以ls开头的命令。
搜索历史:
# 向上搜索历史命令
按 Ctrl+r,输入关键词历史命令快捷键
| 快捷键 | 功能 |
|---|---|
↑ / Ctrl+p | 上一条命令 |
↓ / Ctrl+n | 下一条命令 |
Ctrl+r | 反向搜索历史 |
Ctrl+g | 退出搜索 |
!! | 重复上一条 |
!$ | 上一条命令的最后一个参数 |
11.5 显示所有命令的别名
alias列出当前所有别名定义。
很多发行版默认设置了一些别名,比如:
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'11.6 查看特定命令的别名
alias ls
alias ll查看某个命令的别名定义。
11.7 创建新的临时别名
alias ll='ls -la'
alias gs='git status'
alias ..='cd ..'临时创建别名,关闭终端后失效。
11.8 创建新的永久别名
将别名写入配置文件,永久生效:
# 写入bash配置
echo "alias ll='ls -la'" >> ~/.bashrc
echo "alias gs='git status'" >> ~/.bashrc
# 立即生效
source ~/.bashrc常见配置文件
| Shell | 配置文件 |
|---|---|
| bash | ~/.bashrc 或 ~/.bash_aliases |
| zsh | ~/.zshrc |
建议别名统一放到
~/.bash_aliases,更整洁。
11.9 删除别名
unalias ll删除指定别名。
删除所有别名:
unalias -a11.10 小结
命令历史
history查看历史!!重复上一条!n执行第n条!cmd执行最近以cmd开头的Ctrl+r反向搜索
别名 alias
alias查看所有alias name='command'创建unalias name删除- 写入
~/.bashrc永久保存
实用别名推荐
# 文件操作
alias ll='ls -lah'
alias ..='cd ..'
alias ...='cd ../..'
# 安全操作(防止误删覆盖)
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# Git
alias gs='git status'
alias ga='git add'
alias gc='git commit'
alias gp='git push'历史命令和别名是提升shell效率的两个重要手段,善用它们能少敲很多字。