gpt4 book ai didi

linux - bash:循环中的 grep 不 grep

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

我有(可能是一个明显/愚蠢的)问题:我想遍历路径列表,剪切它们并使用字符串在日志文件中进行 grep。虽然每个步骤都可以自己正常工作并且“手动处理”会导致命中 - grep 在循环中找不到任何东西?

for FILE in `awk -F "/" '{print $13}' /tmp/files_not_visible.uniq`; do
echo -e "\n\n$FILE\n";
grep "$FILE" /var/log/PATH/FILENAME-2015.12.*;
done

我也尝试做一个 while 循环作为反向练习,但失败了同样的非结果

while read FILE; do
echo $FILE;
echo $FILE | awk -F "/" '{print $13}' | grep -f - /var/log/PATH/FILENAME-2015.12.* ;
done < /tmp/files_not_visible.uniq/tmp/files_not_visible.uniq

所以,我想有一些系统性问题,我如何使用 grep 处理搜索字符串?

最佳答案

发现:文件列表包含不可见字符作为该行的最后一个字符!向我发送文件列表的用户可能是在其他操作系统上创建的!我只在手动测试时复制了 - 当然 - 可见的字符!

通过删除一行的最后一个字符来修复循环

> sed -e 's/.$//'

关于linux - bash:循环中的 grep 不 grep,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34897035/

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