여러 파일에 대해 명령을 실행하고 각 파일의 출력을 다른 파일에 저장하는 방법

여러 파일에 대해 명령을 실행하고 각 파일의 출력을 다른 파일에 저장하는 방법

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

관련 정보