Bash 命令与 Shell

Bash 命令与 Shell

这一篇我们学习 Shell 和 Bash。Shell 是 Linux 的命令解释器,Bash 是最常用的 Shell。

什么是 Shell

Shell 是用户和操作系统之间的桥梁。你在终端里输入命令,Shell 负责解释这些命令并交给系统执行。可以把它理解成一个「翻译官」。

Linux 系统支持多种 Shell,可以用 cat /etc/shells 查看:

1
2
3
4
5
6
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh

默认的 Shell 是 Bash(Bourne Again Shell)。

Bash 常用命令

帮助与历史

命令 作用
命令 --help 查看命令帮助
man 命令 查看命令手册(更详细)
history 查看所有历史命令
Ctrl + r 进入历史命令搜索模式
clear 清除屏幕

系统信息

命令 作用
pwd 显示当前目录路径
date 查看系统时间
cal 查看日历
uptime 查看系统运行了多久、当前有几个用户
ifconfig 查看 IP 等信息
hostname 查看当前主机名

后台任务

命令 作用
firefox& 命令后加 & 表示后台方式运行
jobs 查看后台运行的程序列表
fg jobid 将后台进程放到前台
Ctrl + z 将前台进程挂起

环境变量

命令 作用
env 查看所有系统变量
export 查看所有系统变量
echo $JAVA_HOME 查看指定系统变量的值
unset $JAVA_HOME 删除指定的环境变量

什么是环境变量?

环境变量是操作系统提供给程序的一些「全局设置」,比如 PATH 变量告诉系统去哪里找命令。用 echo $变量名 可以查看某个变量的值。

文件操作补充

命令 作用
tail -200f 文件名 查看文件末尾 200 行,文件更新时动态显示(常用于查看日志)
locate 搜索关键字 快速搜索系统文件(类似 Windows 的 everything)
updatedb 更新 locate 的索引
rmdir 文件夹名 删除空文件夹

Bash 快捷键

快捷键 作用
Ctrl + a 光标移到行首
Ctrl + e 光标移到行尾
Ctrl + c 杀死当前进程
Ctrl + d 退出当前 Shell
Ctrl + l 清屏
Ctrl + r 搜索之前打过的命令
Ctrl + u 清除光标前至行首的内容
Ctrl + w 移除光标前的一个单词
Ctrl + z 把当前进程转到后台运行

Zsh 入门

Zsh 是另一种 Shell,兼容 Bash,据传说 99% 的 Bash 操作和 Zsh 是相同的。它提供了更好的补全、主题和插件支持。

安装 Zsh

1
$ sudo apt-get install -y zsh

使用 oh-my-zsh

oh-my-zsh 帮我们整理了一些常用的 Zsh 扩展功能和主题,无需自己捣鼓 Zsh,直接用它就足够了。

1
2
3
4
5
# 先安装 git
$ sudo apt-get install -y git

# 安装 oh-my-zsh
$ wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | sh

常用插件

  • wd:给指定目录映射一个全局名字,方便直接跳转
  • autojump:记录常去的目录,输入文件夹名即可快速进入
  • zsh-syntax-highlighting:对终端命令高亮显示,正确拼写是绿色,错误是红色

命令别名

在 ~/.zshrc 中配置别名,可以简化常用命令:

1
2
3
4
alias cls='clear'
alias ll='ls -l'
alias la='ls -a'
alias grep="grep --color=auto"

小结

这一篇我们学习了 Bash 命令和 Shell 知识。下一篇学习系统日常维护和定时任务。

上一篇:Vim 编辑器

下一篇:系统维护与定时任务