我的要求:我想用 sshpass 命令传递一些命令。例1:
sshpass -p 'sshpass' ssh -oKexAlgorithms******* user@host touch /mnt/us/pass
上面的 sshpass 示例完美运行。
例2:
sshpass -p 'sshpass' ssh -oKexAlgorithms******* user@host mntroot rw
在上面的示例中,在主机中我必须授予mntroot rw
登录用户启用读写权限。当我使用 sshpass 命令传递并抛出sh: mntroot: not found
错误时,此命令不起作用,但当我登录并手动输入时,它在主机中完美运行。
请帮助我。
答案1
一种解决方案是mntroot
使用完整路径进行调用。
交互式 shell 和非交互式 shell 使用不同的初始化文件。也许就是这个原因。当你登录系统时,你显然会得到不同的PATH
值。