我的 shell 脚本中有多个
ls -l
命令,我希望每一行将其输出附加到文本文件中,所以我像这样运行它:
ls -l /directory/to/check/exists >> validation.log
该文件将仅显示输出,但我也希望它显示已执行的命令。 如何在不添加命令和同一命令的
echo
以避免多行的情况下获得此功能?
谢谢你
您可以使用 bash 函数:
run() {
echo "$@"
"$@"
}
run ls -l /directory/to/check/exists >> validation.log
它的优点是可以让您根据需要格式化命令,例如
echo ">> $@"
。