gpt4 book ai didi

linux - 如何zgrep多个字符串

转载 作者:太空宇宙 更新时间:2023-11-04 12:42:24 24 4
gpt4 key购买 nike

我正在尝试使用下面的代码对多个字符串进行 zgrep,但是如果我省略其中一个参数,它会生成大量不匹配的文件。但是,我输入了它正常工作的所有 5 个字符串。我怎样才能 zgrep 任意数量的字符串,即使它只是 5 个字符串中的 3 个。

echo "Enter string 1: "
read isdn1
echo "Enter string 2: "
read isdn2
echo "Enter string 3: "
read isdn3
echo "Enter string 4: "
read isdn4
echo "Enter string 5: "
read isdn5

for host in $(cat host.txt); do ssh "$host" "cd /onip/cdr/output/snapshot/normal/backup && zgrep '$isdn1\|$isdn2\|$isdn3\|$isdn4\|$isdn5' xyz_shot*"

最佳答案

试试这个:

echo "Enter string 1: "
read isdn1
echo "Enter string 2: "
read isdn2
echo "Enter string 3: "
read isdn3
echo "Enter string 4: "
read isdn4
echo "Enter string 5: "
read isdn5

grep_str=`echo "$isdn1|$isdn2|$isdn3|$isdn4|$isdn5"|perl -pe 's/\|\||\|$//'`
for host in $(cat host.txt); do ssh "$host" "cd /onip/cdr/output/snapshot/normal/backup && zgrep '$grep_str' xyz_shot*"

关于linux - 如何zgrep多个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39766184/

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