我正在使用详细模式编写脚本,但我想为命令输出设置一个前缀(主要是为了使输出看起来更好)。
例如,脚本:
#!/bin/bash -v
pwd
hostname
Run Code Online (Sandbox Code Playgroud)
这将给出输出:
pwd
/home/username
hostname
myawesomehost
Run Code Online (Sandbox Code Playgroud)
但我想要输出(特别是带有$
符号):
$ pwd
/home/username
$ hostname
myawesomehost
Run Code Online (Sandbox Code Playgroud)
有没有办法为这样的详细输出设置前缀?
你可以用PS4
与set -x
(启用跟踪):
#!/bin/bash
# prompt for trace commands
PS4='$ '
# enable trace
set -x
# remaining script
pwd
hostname
Run Code Online (Sandbox Code Playgroud)
这将产生如下输出:
$ pwd
/home/username
$ hostname
myawesomehost
Run Code Online (Sandbox Code Playgroud)