在跨多个服务器的文件上使用Linux命令

在跨多个服务器的文件上使用Linux命令,linux,dns,hostname,Linux,Dns,Hostname,作为一个整体,我对Linux还不熟悉,到目前为止,我还没有找到一个解决这个问题的方法,它充其量也不笨拙。我有Windows背景,因此我习惯在一台服务器上运行命令,访问同一域中多个系统上的文本文件 在Windows中处理的内容示例: find "Some text" \\ServerName01\c$\inetpub\*.log find "Some text" \\ServerName02\c$\inetpub\*.log find "Some text" \\ServerName03\c$\i

作为一个整体,我对Linux还不熟悉,到目前为止,我还没有找到一个解决这个问题的方法,它充其量也不笨拙。我有Windows背景,因此我习惯在一台服务器上运行命令,访问同一域中多个系统上的文本文件

在Windows中处理的内容示例:

find "Some text" \\ServerName01\c$\inetpub\*.log
find "Some text" \\ServerName02\c$\inetpub\*.log
find "Some text" \\ServerName03\c$\inetpub\*.log
我希望在Linux中执行的操作示例:

sed 's/SomeText/OtherText/p //ServerName01/var/opt/somefolder/*.log
sed 's/SomeText/OtherText/p //ServerName02/var/opt/somefolder/*.log
sed 's/SomeText/OtherText/p //ServerName03/var/opt/somefolder/*.log
在Linux中执行上述操作的最佳方法是什么,或者说是可能的


谢谢

请参阅pssh和pscp套件,您可以在一组远程服务器上运行命令:

请参阅pssh和pscp套件,您可以在一组远程服务器上运行命令:

pssh或cssh可以工作

pssh提供了许多命令,用于针对一组 计算机,使用SSH。它对于在集群上操作非常有用 同质配置的主机


pssh或cssh可以工作

pssh提供了许多命令,用于针对一组 计算机,使用SSH。它对于在集群上操作非常有用 同质配置的主机


有很多方法可以做到这一点:

  • 通过NFS/Fuse挂载,在一个系统上挂载日志目录,您可以执行与windows相同的操作(windows会自动挂载带有“\\”的远程文件系统)
  • 使用ssh(这是我首选的解决方案)
cat serverlist | xargs-i ssh{}“grep\”一些文本\“yourfilepath”


如果您使用ssh密钥对,这会有所帮助。有很多方法可以做到这一点:

  • 通过NFS/Fuse挂载,在一个系统上挂载日志目录,您可以执行与windows相同的操作(windows会自动挂载带有“\\”的远程文件系统)
  • 使用ssh(这是我首选的解决方案)
cat serverlist | xargs-i ssh{}“grep\”一些文本\“yourfilepath”


如果您使用ssh密钥对,这会很有帮助

如果您能用英语准确地解释您要完成的任务,而不是用Windows命令语言给出一个示例,那么回答起来就会简单得多--除此之外,许多Unix专家都不懂Windows命令语言。您是如何做到的,它们是本地服务器还是您正试图通过ssh来实现?如果是终端ssh或gui应用程序,如putty或类似的应用程序?可能应该移动到SuperUsers。如果您能用英语准确解释您要完成的任务,而不是用Windows命令语言给出示例,那么回答起来会简单得多,许多Unix专家不知道Windows命令语言。您是如何尝试这样做的,是本地服务器还是通过ssh尝试这样做?如果是这样的话,它是一个终端ssh还是一个gui应用程序,比如putty或类似的东西?可能应该移动到superuser