따라서 서로 다른 열에 6가지 항목에 대한 데이터가 포함된 파일이 있습니다.
1 0.020 0.700 5.4 1500 4000
2 0.020 0.700 5.4 1500 4050
3 0.020 0.700 5.4 1500 4100
4 0.020 0.700 5.4 1500 4150
5 0.020 0.700 5.4 1500 4200
6개 열의 값을 아래에 현재 설정한 두 번째 파일로 읽어오고 싶습니다. 나는 이것을 세 번째 파일인 "inlist_changer.sh" 파일에서 읽기 위한 입력으로 사용할 계획입니다. 죄송합니다. 저는 쉘 스크립팅에 대한 경험이 많지 않기 때문에 그 외에도 스왑 bash
과 명령 을 반복하지 않도록 하는 더 효율적인 방법을 알고 계실 수도 있습니다 EOT
.
bash inlist_changer.sh<<EOT
placeholder_value1
EOT
bash inlist_changer.sh<<EOT
placeholder_value2
EOT
bash inlist_changer.sh<<EOT
placeholder_value3
EOT
bash inlist_changer.sh<<EOT
placeholder_value4
EOT
bash inlist_changer.sh<<EOT
placeholder_value5
EOT
bash inlist_changer.sh<<EOT
placeholder_value6
EOT
./mk
./rn
bash inlist_changer.sh<<EOT
placeholder_value1
EOT
bash inlist_changer.sh<<EOT
placeholder_value2
EOT
bash inlist_changer.sh<<EOT
placeholder_value3
EOT
bash inlist_changer.sh<<EOT
placeholder_value4
EOT
bash inlist_changer.sh<<EOT
placeholder_value5
EOT
bash inlist_changer.sh<<EOT
placeholder_value6
EOT
./rn
bash inlist_changer.sh<<EOT
placeholder_value1
EOT
bash inlist_changer.sh<<EOT
placeholder_value2
EOT
bash inlist_changer.sh<<EOT
placeholder_value3
EOT
bash inlist_changer.sh<<EOT
placeholder_value4
EOT
bash inlist_changer.sh<<EOT
placeholder_value5
EOT
bash inlist_changer.sh<<EOT
placeholder_value6
EOT
./rn
답변1
6개의 입력 열이 있는 첫 번째 파일의 이름이 "analytic.dat"라고 가정합니다. 두 번째 파일을 이렇게 수정할까요? 입력 파일의 각 줄에 대해 스크립트를 호출하고 싶습니다.
while read -ra fields; do
for field in "${fields[@]}"; do
bash inlist_changer.sh <<<"$field"
done
./mk
./rn
done < analysis.dat