![이름이 텍스트 파일의 줄과 일치하는 파일 복사](https://linux55.com/image/163921/%EC%9D%B4%EB%A6%84%EC%9D%B4%20%ED%85%8D%EC%8A%A4%ED%8A%B8%20%ED%8C%8C%EC%9D%BC%EC%9D%98%20%EC%A4%84%EA%B3%BC%20%EC%9D%BC%EC%B9%98%ED%95%98%EB%8A%94%20%ED%8C%8C%EC%9D%BC%20%EB%B3%B5%EC%82%AC.png)
그래서 다음과 같은 이름의 파일이 있습니다 filters.txt
.
01_0012
01_12321
02_123J4
...
New/
그런 다음 다음과 같은 이름의 많은 파일이 있는 디렉터리가 있습니다 .
DEV_01_0012.csv
LIN_02_123J4.csv
FD_03_1234.csv
...
New/
그래서 저는 기본적으로 이러한 패턴 중 하나를 포함하는 모든 파일을 복사하는 Unix 방법을 찾고 있습니다.filters.txt
나는 Python 스크립트를 작성할 수 있지만 누군가 내가 보고 싶은 방법을 알고 있다면 쉘 스크립트로 이 작업을 수행하는 쉬운 방법을 실제로 생각할 수 없습니다.
답변1
빠르고 더러운…
<filters.txt xargs -i% bash -c "eval cp *%* New/"
답변2
이는 옵션일 수 있습니다.
for f in *.csv; do
[[ -n $(echo $f | grep -f filters.txt) ]] && cp $f dest/
done