![여러 파일에 대해 명령을 실행하고 각 파일의 출력을 다른 파일에 저장하는 방법](https://linux55.com/image/118709/%EC%97%AC%EB%9F%AC%20%ED%8C%8C%EC%9D%BC%EC%97%90%20%EB%8C%80%ED%95%B4%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%8B%A4%ED%96%89%ED%95%98%EA%B3%A0%20%EA%B0%81%20%ED%8C%8C%EC%9D%BC%EC%9D%98%20%EC%B6%9C%EB%A0%A5%EC%9D%84%20%EB%8B%A4%EB%A5%B8%20%ED%8C%8C%EC%9D%BC%EC%97%90%20%EC%A0%80%EC%9E%A5%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
vcf 파일(file.vcf)과 (HA1.txt, HA1.txt, HA2.txt,...,HA28.txt)
다양한 ID가 포함된 여러 필러 파일이 있습니다.
각 전체 파일은 다음과 같습니다(각 줄은 개별 항목입니다).
$ cat HA1.txt
QQ48_SD1A-37
ED19_SD1A40-3_357
TT335_SD1A-20
HH356_SD1A-7
Q029B_SD1A38
HT73_SD1A-28
HT288_SD1A-24
Q004B_SD1A-1
Q027_SD1A-4
Q096_SD1A-40
각 인구통계의 각 개인에 대한 적용 범위의 깊이를 추출하고 싶습니다. 인구 파일의 각 사람에 대해 이 명령을 어떻게 실행 grep -v "^#" file.vcf | cut -f 10 | cut -d ':' -f2
하고 각 인구에 대한 출력을 별도의 파일에 저장합니까?
각 그룹에 대해 내가 원하는 출력은 다음과 같습니다.
. 6 4 6 . 5 . 10 . 7 .
. 9 16 8 3 8 . 16 9 22 .
. 8 11 8 . 8 . 16 8 18 .
6 20 12 20 12 28 3 24 4 26 14
6 25 15 24 13 32 3 25 3 25 15
각 열은 사람입니다!
답변1
for file in *; do grep '[pattern]' "$file" | cut -f 10 | cut -d ':' -f2 > "$file.output"; done