вырезание поля по длине с помощью awk/sed

Чтобы просмотреть список всех компонентов в системе Linux, вы можете использовать:

  • Команда inxiс -optionсм.inxi -h
  • Команда hwinfoаналогична lshwи более детализирована.
  • каталог /proc, в котором содержится вся информация о системе, памяти, устройствах, оборудовании....
5
27.11.2018, 11:04
2 ответа

Да, вы можете обрезать и перестроить каждую строку с помощью AWK:

awk -F'|' 'BEGIN { OFS = FS } { $8 = substr($8, 1, 5); print }'

Это устанавливает разделители ввода и вывода на «|» и для каждой строки ввода обрезает восьмое поле максимум до пяти символов и печатает все поля (, включая обновленное поле ).

12
27.01.2020, 20:33

Поскольку ваш файл имеет фиксированную ширину — или, по крайней мере, так кажется — вы можете сделать это, подсчитывая столбцы для сохранения и удаления в sed:

sed -r 's/(.{68}).{23}(.*)/\1\2/' yourfile
1
27.01.2020, 20:33

Теги

Похожие вопросы