我在远程计算机上运行此命令,并给出所需的结果:
local# /usr/local/sbin/i2c_eeprom show-serial
serial = 5070045
当我从远程服务器运行它时,它不起作用:
server# sshpass -f pass.out ssh 192.168.1.1 -n -o "StrictHostKeyChecking=no" "i2c_eeprom show-serial"
serial = TBD Serial
为什么结果不能正确显示?我已经尝试首先创建脚本文件,然后将输出重定向到远程文件,然后读取文件,但我没有得到相同的结果。我总是得到TBD系列。关于如何远程运行此命令的任何建议吗?
我通过在服务器上创建一个bash脚本如下:
来解决此问题:#!/bin/bash -l
/usr/local/sbin/i2c_eeprom show-serial
我将其复制到客户端并通过SSH执行。关键是Shebang系列中的" -l"。我在这里找到了这个解决方案。这个命令做什么?&quot'exec bash -l&quot