我正在使用VSTS配置发布步骤以更新数据库并使用SSH(https://docs.microsoft.com/fr-fr/vsts/build-release/tasks/deploy/ssh)运行我们的脚本来更新mongodb。
脚本工作正常但不知何故所有输出都转到STDERR。
运行:内联脚本
参数:
cd /home/ubuntu/Project/root/Deploy
dos2unix sync_mongo.sh
sh ./mongosync.sh
这是步骤日志的开始:
2018-01-18T17:39:55.7603461Z dos2unix sync_mongo.sh
2018-01-18T17:39:55.7603748Z sh ./mongosync.sh
2018-01-18T17:39:55.7604695Z Trying to setup SSH connection to ********@****:22
2018-01-18T17:39:57.5259303Z Successfully connected.
2018-01-18T17:39:59.7115141Z tr -d '\015' <"./sshscript_1516297195734" > "./sshscript_1516297195734._unix"
2018-01-18T17:40:00.0197880Z chmod +x "./sshscript_1516297195734._unix"
2018-01-18T17:40:00.2617249Z "./sshscript_1516297195734._unix"
2018-01-18T17:40:00.5124617Z ##[error]dos2unix:
2018-01-18T17:40:00.5124929Z
2018-01-18T17:40:00.5125475Z ##[error]converting file sync_mongo.sh to Unix format ...
答案 0 :(得分:0)
事实证明,许多unix命令使用stderr来显示进度。
解决方案是忽略stderr输出:
dos2unix sync_mongo.sh 2> /dev/null
sh ./mongosync.sh 2> /dev/null