У меня есть текстовый файл, импортированный из Excel 2003 в следующем базовом формате.
43038 12500 s.ramesh labour
43038 13000 m.ramesh doctor
Мне нужно оформить этот файл в таком формате, чтобы столбец 1 был от 1 до 5.
Проблема в том, что столбцы 2, 3 и 4 расположены не в том порядке.
Я хочу, чтобы этот файл был в таком порядке, чтобы
- столбец 2 всего файла должен быть на месте 15-19
- столбец 3 должен быть в диапазоне 49-65
- столбец 4 должен быть на 75-95-й позиции
В файле 100000 строк и 4 столбца, пожалуйста.
Я ищу совета, какой редактор или оболочка будут полезны, так как мне приходится делать это примерно для 100 файлов ежедневно.
решение1
Для этого идеально подходит скриптовый язык, такой как Perl.
$ cat t2
5 2 r.gritty teaboy
43038 12500 s.ramesh labour
43038 13000 m.ramesh doctor
$ perl -ane 'printf("%5s %5s\n", $F[2],$F[1])' t2
r.gritty 2
s.ramesh 12500
m.ramesh 13000
или
$ perl -ane 'printf("%5s %0.5d\n", $F[2],$F[1])' t2
r.gritty 00002
s.ramesh 12500
m.ramesh 13000
Затем отредактировать сотни файлов на месте за один раз
$ perl -i -ane 'printf("%5s %5s\n", $F[2],$F[1])' t1 t2 t3 t4 t5 *.txt foo/t6