다음 항목이 포함된 탭으로 구분된 파일이 있습니다.
1 4 10 고양이
1 10 4 개
열 3이 열 2보다 작으면 다음과 같이 전환되도록 처리하고 싶습니다.
1 4 10 고양이
1 4 10 개
이 스크립트는 그것을 얻는 것 같지만 기준을 충족하지 않는 열만 출력하므로 출력은 다음과 같습니다.
1 4 10 고양이
while read field1 field2 field3 field4; do
if [[ "$field2" -gt "$field3" ]] ; then
awk '{t=$field2; $field2=$field3; $field3=t; print; } '
fi
done < filename.txt
제가 뭔가 어리석은 실수를 저질렀다는 것은 확실하지만 아직 한 번도 본 적이 없습니다.
답변1
awk '$3 < $2 { temp=$3; $3=$2; $2=temp } { print }' /path/to/file