
다음과 같은 문제가 발생했습니다. 데이터를 변환하려면 각 줄의 특정 위치에 공백을 추가해야 합니다.
ATOM 1 HT1 GLY 5 10.346 30.927 130.252 0.00 0.00
(12번째 열에 공백을 추가하여)
ATOM 1 HT1 GLY 5 10.346 30.927 130.252 0.00 0.00
이제 나는 다음을 통해 그것을 달성했습니다.
cat $INFILE | cut -c-11 > $INFILE.1
cat $INFILE | cut -c12- > $INFILE.2
paste -d ' ' $INFILE.1 $INFILE.2 > $INFILE
하지만 임시 파일을 사용하지 않고 더 우아한 솔루션이 있을 수 있을까요?
미리 감사드립니다.
답변1
당신은 확실히 이것을 할 수 있지만 sed
나는 perl
더 잘 압니다 ...
perl -p -i -e 's/^(.{12})/$1 /' $INFILE
나중에
sed -i -e 's/^.\{12\}/& /' $INFILE