Shell 命令

ctrl-c

发送 SIGINT 信号给前台进程组中的所有进程,强制终止程序的执行

ctrl-z

发送 SIGTSTP 信号给前台进程组中的所有进程,常用于挂起一个进程,而并非结束进程

jobs

查看当前 Shell 下运行的所有程序;带 + 表示最新的 jobs;带-表示次新的 jobs;其他 jobs 不带符号

fg

将刚挂起的命令返回前台运行,可以使用 ctrl-z 再次挂起该进程

fg %3

将第三个 job 返回前台运行

bg

将刚挂起的命令放到后台运行,无法使用 ctrl-z 再次挂起该进程

bg %3

将第三个 job 放到后台运行

kill %1

杀死挂起的第一个进程

ctrl-d

一个特殊的二进制值,表示 EOF,作用相当于在终端中输入 exit 后回车

ctrl-s

中断控制台输出

ctrl-q

恢复控制台输出

ctrl-l

清屏

command &

直接在后台运行程序

nohup

如果你希望进程在你退出帐户、关闭终端之后继续运行,可以使用 nohup 命令。长命令必须写在 Shell 文件中,否则 nohup 不起作用

nohup command &

该命令的一般形式

nohup command > out.file 2>&1 &

log 输出到 out.file,并将标准错误输出重定向到标准输出,再被重定向到 out.file

Shell 变量

$$

Shell 本身的 PID(ProcessID)

$!

Shell 最后运行的后台 Process 的 PID

$?

最后运行的命令的结束代码(返回值)

$-

使用 Set 命令设定的 Flag 一览

$*

所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数

$@

所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数

$#

添加到 Shell 的参数个数

$0

Shell 本身的文件名

$1~$n

添加到 Shell 的各参数值。$1 是第 1 参数、$2 是第 2 参数…