我正在学习编写 bash 脚本,我有一个如下所示的脚本:
#!/bin/bash
log_file="user_data.log"
exec > $log_file 2>&1
# Update list of available packages
sudo apt update
# Install required packages
sudo apt install docker.io docker-compose git nginx certbot python3-certbot-nginx -y
我将 stdin 和 stderr 重定向到 user_data.log,但是我希望在同一日志文件中看到命令(例如 sudo apt update)。我该怎么做呢? 有没有更好的方法来实现这一目标(没有
sh script.sh > somewhere
)?
非常感谢您的帮助。
编辑:@KamilCuk 建议正确答案:在脚本开头使用 set -x
@KamilCuk 建议正确答案:在脚本开头使用 set -x