Answers:
使用bash -v
。
这是脚本:
#!/bin/bash -v
echo "Hello, World" | sed 's|Hello|Goodbye|'
echo "Done."
这是输出:
#!/bin/bash -v
echo "Hello, World" | sed 's|Hello|Goodbye|'
Goodbye, World
echo "Done."
Done.
不幸的是,没有像PS4
打印扩展命令那样的特殊标记。您可以将两者结合起来以快速识别命令:
#!/bin/bash -vx
echo "Hello, World" | sed 's|Hello|Goodbye|'
+ echo 'Hello, World'
+ sed 's|Hello|Goodbye|'
Goodbye, World
echo "Done."
+ echo Done.
Done.
set -x是另一种方式。
$ cat a.sh
#!/bin/bash
set -x
echo "Hello, World" | sed 's|Hello|Goodbye|'
echo "Done."
输出将是:
sh a.sh
+ echo 'Hello, World'
+ sed 's|Hello|Goodbye|'
Goodbye, World
+ echo Done.
Done.
set -x
在脚本中的任何位置,甚至可以再次将其停用。因此,如果您只想将它放在echo "Done"
网上,请放在set -x
那之前。