Azure DevOps SSH任务在AIX远程服务器执行命令失败求助
Azure DevOps SSH任务执行AIX命令失败的解决办法
排查与修复步骤
改用脚本文件执行命令
AIX默认shell(ksh)和Linux的shell环境存在差异,直接在SSH任务的命令框输入单行/多行命令容易触发兼容性问题。建议:- 本地编写包含
ls、pwd等命令的脚本文件(比如run_cmds.sh) - 用Azure DevOps的复制文件任务将脚本上传到AIX的临时目录(如
/tmp) - SSH任务执行命令:
chmod +x /tmp/run_cmds.sh && ksh /tmp/run_cmds.sh
- 本地编写包含
指定远程shell路径
在SSH任务的高级设置里,将Shell path设置为AIX的shell绝对路径,比如/usr/bin/ksh或/bin/bash(如果AIX已安装bash),避免依赖远程默认shell的配置冲突检查代理端SSH兼容性
Linux构建代理的OpenSSH版本可能和AIX的SSH服务不兼容,尝试升级代理上的OpenSSH到稳定版,或者降级到适配AIX的版本(如OpenSSH 7.x系列)测试绝对路径命令
直接执行命令的绝对路径排除环境变量问题,比如用/bin/ls、/bin/pwd代替ls、pwd,确认是否是PATH未包含命令路径导致的失败
错误信息
##[error]Unhandled: Cannot read properties of undefined (reading 'on')
##[error]Command failed with error on remote machine. Error: Unable to execute
内容的提问来源于stack exchange,提问作者unknown
相关产品推荐
相关产品推荐

