如何在unix中读取位于本地服务器的远程服务器中的文件内容?

如何在unix中读取位于本地服务器的远程服务器中的文件内容?

我的本地服务器中存在 results.txt 文件,但我想通过逐行读取 result.txt 的内容来在远程服务器上执行一些操作。

我怎样才能做到这一点?

答案1

  • 首先-要获取远程服务器中的本地文件,假设您在远程服务器上: ssh UserName@LocalMachineIPWhciFileonit cat /path/to/result.txt
  • 第二-找到他们:
    1. 如果您的文件包含完整路径:if [ -f ... ]
    2. 如果没有,您可以使用locatefind命令。

假设您的文件中有完整的文件名地址: for i in $(ssh UserName@LocalMachineIPWhciFileonit cat /path/to/result.txt);do if [ -f $i ];then cp $i /NewPathYouWould fi;done

我希望你的回答是正确的。

答案2

您可以通过它提供文件的内容,ssh就像通过任何其他管道提供文件内容一样

# Create sample file
cat >>/tmp/file <<'EOF'
apple
banana
cherry
EOF

# Run 'nl' locally
nl </tmp/file
     1  apple
     2  banana
     3  cherry

# Run 'tac' on the remote server 'rserver'
nl </tmp/file | ssh rserver tac
     3  cherry
     2  banana
     1  apple

# Postprocess result locally
nl </tmp/file | ssh rserver tac | grep ana
     2  banana

# Tidy up
rm -f /tmp/file

相关内容