linux脚本获取上一条命令
-
Linux脚本可以通过特殊变量`$`来获取上一条命令。具体来说,`$!`表示上一个后台进程的PID(进程ID),`$?`表示上一条命令的退出状态码,而`$_`表示上一个命令的最后一个参数。
如果想要获取上一条命令的整个内容,可以使用`history`命令来查看命令历史记录,然后通过`tail`命令获取最后一条命令:
“`shell
history | tail -n 2 | head -n 1
“`上述命令中,`history`命令用于查看命令历史记录,`tail -n 2`用于获取最后两条命令,而`head -n 1`则用于取其中的第一条命令,即上一条命令。
另外,也可以将上一条命令保存到一个变量中,以便后续使用。下面是一个例子:
“`shell
previous_command=$(history | tail -n 2 | head -n 1)
echo $previous_command
“`上述脚本中,`$(history | tail -n 2 | head -n 1)`表示将上一条命令保存到变量`previous_command`中,然后通过`echo`命令将其打印出来。
总结起来,要在Linux脚本中获取上一条命令,可以使用`$!`、`$?`、`$_`等特殊变量,或者通过`history`命令结合`tail`和`head`命令来获取。
2年前 -
在Linux中,可以通过使用一个特殊的变量”$_”来获取上一条命令。
1. $#:表示获取上一条命令的参数个数。可以通过$#来获取上一条命令的参数个数。例如:
“`shell
$ echo “Hello, world!”
$ echo “上一条命令的参数个数是: $#”
上一条命令的参数个数是: 2
“`2. $0:表示获取上一条命令的命令本身。使用$0可以获取上一条命令的命令本身。例如:
“`shell
$ echo “上一条命令是: $0”
上一条命令是: echo
“`3. $_:表示获取上一条命令的最后一个参数。使用$_可以获取上一条命令的最后一个参数。例如:
“`shell
$ echo “Hello, world!”
$ echo “上一条命令的最后一个参数是: $_”
上一条命令的最后一个参数是: world!
“`4. $!: 表示获取上一条命令的进程ID。可以使用$!获取上一条命令的进程ID。例如:
“`shell
$ sleep 5 &
$ echo “上一条命令的进程ID是: $!”
上一条命令的进程ID是: 12345
“`
5. $?:表示获取上一条命令的返回值。可以通过$?来获取上一条命令的返回值。0表示成功,非0表示失败。例如:
“`shell
$ ls
$ echo “上一条命令的返回值是: $?”
上一条命令的返回值是: 0
“`总结:
在Linux脚本中,可以通过一些特殊的变量来获取上一条命令的相关信息,例如获取上一条命令的参数个数、命令本身、最后一个参数、进程ID以及返回值。这些变量的使用可以帮助我们更好地理解和处理命令的执行结果。2年前 -
在Linux系统中,可以使用以下几种方法来获取上一条命令。
方法一:使用“history”命令
1. 在终端中输入“history”命令,可以查看历史命令列表。
2. 找到上一条命令的编号。
3. 使用“!编号”来执行该命令。例如,如果上一条命令的编号为“5”,则可以输入“!5”来执行该命令。
方法二:使用“!!”符号
1. 在终端中直接输入“!!”,即可执行上一条命令。方法三:使用“Ctrl + p”
1. 在终端中按下“Ctrl + p”组合键,即可获取上一条命令。
2. 按下“Enter”键执行该命令。方法四:使用“history”命令和管道
1. 在终端中输入“history | tail -n 2 | head -n 1”命令,该命令会显示倒数第二条命令。
2. 使用“!-1”来执行该命令。方法五:使用“fc”命令
1. 在终端中输入“fc -s”命令,该命令会执行上一条命令。
2. 可以使用“fc -l”命令来查看历史命令列表,并选择需要执行的命令。方法六:使用“$_”变量
1. 在终端中输入“echo $_”命令,该命令会输出上一条命令。方法七:使用“bash”命令
1. 在终端中输入“bash”命令,该命令会打开一个新的终端。
2. 在新的终端中就可以使用“上箭头”来获取上一条命令。通过以上几种方法,可以轻松地获取上一条命令,并且根据实际需求来选择使用的方法。
2年前