다음과 같은 샘플 파일 s1.txt가 있습니다.
Sample.log.54
Sample.log.56
Sample.log.57
Sample.log.58
Sample.log.59
Sample.log.110
Sample.log.113
Sample.log.114
Sample.log.115
Sample.log.116
Sample.log.117
Sample.log.118
Sample.log.119
Sample.log.120
Sample.log.121
Sample.log.122
Sample.log.112
Sample.log.123
Sample.log.124
Sample.log.140
이 폴더에는 다른 파일도 많이 있습니다. 하지만 s1.txt에 나열된 파일에서 특정 문자열을 grep해야 합니다. 폴더에 있는 모든 파일을 읽어서는 안 됩니다.
답변1
grep이 필요한 경우부자파일에서 bash를 사용하면 다음을 사용할 수 있습니다.
grep foo $(cat s1.txt)
답변2
각 줄이 s1.txt
파일 이름을 나타내고 파일 이름에 이상한 문자가 없는 경우:
<s1.txt xargs -d '\n' grep string
답변3
이 질문은 Stack Overflow([https://stackoverflow.com/questions/14655717/grepping-from-a-text-file-list][1]).
xargs grep "your pattern" < my-file-list.txt
답변4
이것은 작동합니다:
for i in `cat s1.txt`; do cat $i | grep "your-string-to-search"; done