형식을 변경하고 싶습니다.
보낸 사람: 샘플.txt
Count Data
1 C0263/Pre-approved Auto Load BC
1 C0263/Pre-approved Auto Load BC Holders
3 C0268/Pre-approved Auto Loan
받는 사람:output.txt
Data Count
C0263/Pre-approved Auto Load BC 1
C0263/Pre-approved Auto BC Holders 1
C0268/Pre-approved Auto Loan 3
답변1
앗해결책:
awk 'NR==1{ printf "%4s%-44s%s\n",FS,$2,$1; next }
{ f1=$1; sub(/^ *[^ ]+ */,""); printf "%4s%-44s%s\n",FS,$0,f1 }' Sample.txt
산출:
Data Count
C0263/Pre-approved Auto Load BC 1
C0263/Pre-approved Auto Load BC Holders 1
C0268/Pre-approved Auto Loan 3
답변2
입력 데이터가 파일에 있고 datafile.txt
POSIX 쉘을 사용한다고 가정하면 다음과 같이 말할 수 있습니다.
sed -e 's/^\s*//' -e 's/\s\+/:/' datafile.txt | while IFS=':' read a b; do
printf '%-30.29s%s\n' "$b" "$a"
done
이 sed
명령은 (1) 모든 선행 공백을 제거한 다음 (2) 하나 이상의 공백이 처음 나타나는 것을 콜론으로 바꿉니다. 결과는 while
콜론으로 구분된 두 필드를 읽는 루프로 파이프된 다음 멋지게 인쇄됩니다.
입력 데이터가 파이프에서 나오는 경우 매개변수를 제거 datafile.txt
하고 sed
.