Linux/Unix 命令行 cheatsheet
终端快捷键
Ctrl + A
移动光标至行首
Ctrl + E
移动光标至行尾
Ctrl + L
清屏
Ctrl + U
剪切光标前的所有字符
Ctrl + K
剪切光标后的所有字符
Ctrl + W
剪切光标前的内容,直到遇到空格为止
Ctrl + Y
粘贴上一次剪切的字符
Ctrl + H
与退格键相同
Ctrl + C
终止当前执行的进程
Ctrl + D
当没有进程在执行时退出当前终端,如果当前有进程就发送 EOF 命令给当前进程
Ctrl + Z
将执行中的任何东西放入后台进程。fg 可以将其恢复。
Ctrl + _
撤销最后一条命令(因为是下划线,所以实际上是 Ctrl + Shift + _
)
Ctrl + F
将将光标向前移动一个字符
Ctrl + B
将将光标向后移动一个字符
Option + →
光标向前移动一个单词 (OS X下,iTerm2 需要特殊配置)
Option + ←
光标向后移动一个单词
常用命令
cd ~
: 回到 $HOME 目录
cd -
: 回到上一次的目录
ls
: 列出文件
ls -l
: 详细列表
ls -a
: 列出隐藏文件
ls -lh
: 更可读的方式列出
ls -R
: 递归显示文件夹内的内容
top
: 实时显示进程信息
ps
: 查看进程信息(当前 session)
ps aux
: 查看所有进程信息
history n
: 列出最近执行过的 n 条命令
Ctrl + R
: 交互式检索之前执行的命令
!<command>
: 执行最近以 <command>
开头的命令
!!<command>:p
:显示最近执行的以 <command>
开头的命令
!!
: 执行上一条命令
!!:p
:将上一条命令打印到终端
rm -i <file>
:删除文件时进行确认
rm -f <file>
:强制删除
rm -r <dir>
:删除目录
find <dir> -name <pattern>
:搜索文件
grep <pattern> <file>
:在文件中搜索
grep -r <pattern> <dir>
:递归搜索目录中含有关键字的所有行
grep -v <pattern> <file>
:搜索文件中不含有关键字的所有行
grep -i <pattern> <file>
:搜索文件中含有关键字的所有行
命令链/管道
[command-a]; [command-b]
不管命令 a 是否执行成功,执行完命令 a 后再执行命令 b
[command-a] && [command-b]
如果命令 a 执行成功就执行命令 b
[command-a] || [command-b]
如果命令 a 执行失败就执行命令 b
[command-a] &
在后台执行命令 a
[command-a] | [command-b]
运行命令 a,然后将结果给命令 b,例如 ps aux | grep python
[command] > [file]
将命令输出的内容覆盖到文件里
[command] >> [file]
将命令输出的内容附加到文件里
[command] < [file]
告诉命令从文件中读取内容