Я зіткнувся з такою проблемою: мені потрібно додати простір у певному положенні в кожному рядку, щоб перетворити дані з
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
Але може бути, є більш елегантне рішення, не використовуючи тимчасові файли?
Заздалегідь спасибі.
sed
також знає про{}
, але потребує втечі: sed -i 's /. \ {12 \} / & /' $ INFILE` працює.