awk를 사용하여 루프 인덱스를 파일에 인쇄해야합니다. 다음은 내가 사용한 코드입니다.
echo "Write the start and end file number:"
read sta end
echo "$sta" "$end"
for (( c="$sta"; c<="$end"; c++ ))
do
echo "$c"
awk '{if (NR < 15 && $8 >0.48 && $8 <0.52 && $9 >0.48 && $9 <0.52 && $10 >0.48 && $10 <0.52) {print $1 " " $8 " " $9 " " $10}}' RD00$c/MergerHalos.out >> center_raw.dat
done
1,8,9,10 번째 열 값에 중독되어 다음 값을 써야합니다.
씨
center_raw.dat에.
귀하의 요구 사항이 무엇인지 확실하지 않지만 아래에서 추론하는 것이 필요한 것 같습니다.
awk -v var="$c" '{if (NR < 15 && $8 >0.48 && $8 <0.52 && $9 >0.48 && $9 <0.52 && $10 >0.48 && $10 <0.52) {print var ":" $1 " " $8 " " $9 " " $10}}' RD00$c/MergerHalos.out >> center_raw.dat
-v
의 옵션은 awk
awk 내부의 외부 bash 변수 값을 전달하는 데 사용됩니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다