gpt4 book ai didi

linux - 使用 shell 脚本在远程计算机上查找包含特定文本的文件

转载 作者:太空宇宙 更新时间:2023-11-04 09:34:17 25 4
gpt4 key购买 nike

我正在尝试在远程服务器上查找包含特定文本的文件。如果有多个文件,它应该列出所有包含此文本的文件。

下面是我能够做出的声明,但不幸的是我在执行时收到一条错误消息。请指教。

命令:

sshpass -p abc123 ssh root@192.168.1.102 find /root/Downloads/test/app/beta/System* -type f -mmin -60 | xargs grep -E "put"

错误信息:

grep: /root/Downloads/test/app/beta/SystemOut_qqq: No such file or directory
grep: /root/Downloads/test/app/beta/SystemOut_qwp: No such file or directory

最佳答案

正在本地扩展通配符。您需要引用它才能将其传递给远程主机。

此外,为了让 grep 能够检查这些文件,它也需要在远程主机上运行,​​因此我们引用了整个命令行。

根据您提出的要求,我添加了一个 -l 选项来列出包含匹配项的文件,而不是打印每个匹配项。因为您的示例表达式是静态字符串,所以我将 grep -E 更改为 grep -F。如果您想搜索正则表达式,您可能想要撤消该更改。

sshpass -p abc123 ssh root@192.168.1.102 'find /root/Downloads/test/app/beta/System* -type f -mmin -60 | xargs grep -F -l "put"'

关于linux - 使用 shell 脚本在远程计算机上查找包含特定文本的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28393854/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com