文章标签 ‘cat’
本文[via]适合于bash、tcsh和zsh。 1、NEWLINE和“;”:分离命令 换行符NEWLINE是一个独特的命令,因为所有的命令处理都是从它开始的。任何一个命令行末尾都要按回车键。 分号“;”也是一个命令分离器。不过它不能开始执行命令,也不会改变任何函数的状态。在命令行上用分号分开每一个命令,就可以按顺序去执行这些命令了。在这命令行的末尾按下回车键,命令就会被执行: 1. $ x ; y; z 如果x、y和z是命令,上面的命令行就等同于下面的3个命令;不同之处在于,shell会在每下面每个命令后(x、y和z)都给出一个提示,而上面的命令行只有在z完成后才给出一个提示: 1. $ x 2. $ y 3. $ z 2、“”:继续执行命令 当用户输入一个很长的命令,并且光标到了屏幕或窗口最右端时,可以用反斜杠符号()在下一行继续用户的命令。 1. $ c 2. m 3. d 相当于输入一个完整的命令cmd。 3、“|”和“&”:分离命令并执行其他任务。 命令分离符有管道符号(|)和后台任务符号(&)。这两个命令分离符不会开始执行一个命令,但是它们能改变函数的一些方面。管道符号可以改变标准输入的代码,也可以改变标准输出的目的地址。后台任务符通知shell在后台执行任务,所以用户立刻就能回到shell提示符,继续执行其他任务。例如,一个包含3个任务的作业: 1. $ x | y | z shell把任务x的输出定向到任务y,并把y的输出定向给z。因为shell在前台运行整个作业,所以z完成前,不会有提示符返回。任务x不完成,任务y不会完成;任务y不完成,任务z也不会完成。 下一个命令是在后台执行任务a和b,在前台执行任务c: 1. a & b & c 2. [1] 14271 3. [2] 14272 shell 显示出每个后台运行进程的作业号(即上面的“[1]”和“[2]”)和PID(即上面的“14271”和“14272”)。任务c一完成用户就会回到提示符。在给出新任务的提示符($)前,shell会检查后台作业是否都已完成。对每个已经完成的作业,shell将显示出它的作业号、单词Done和所调用该作业的命令行,然后shell会显示出提示符。列举作业号的时候,最前的作业后会跟一个减号(-),最后的作业号后面会跟一个加号(+)。其他作业跟一个空格。最后一个命令运行后,shell在显示提示符前会显示下列内容: [...]
