Простое добавление номеров строк в текстовый файл с помощью командной строки
Брайан спрашивает: «Мне нужно добавить номера строк в текстовый файл. Я не имею в виду номера строк в текстовом редакторе, я имею в виду добавление номера рядом с каждым элементом внутри текстового файла. Можно ли это автоматизировать или мне нужно вручную редактировать файл, набирая 1, 2, 3 и сходить с ума?»
Да, вы можете легко жестко закодировать номера строк в текстовый файл… мы покажем вам, как именно это сделать! Чтобы быть полностью ясным, это добавит номер строки счета слева от каждой новой строки текста, предваряя каждую строку соответствующим соответствующим номером.Это жестко кодирует его в текстовый файл, что означает, что он отличается от простого отображения номеров строк в таких приложениях, как TextWrangler, VIM или BBEdit.
Чтобы начать, войдите в Терминал, и вам нужно будет сделать следующее в командной строке:
Использование cat для добавления номеров строк в текстовый файл
Это, безусловно, самый простой способ: cat -n file > file_new
Просто замените «file» на имя файла, к которому вы хотите добавить номера строк, и измените «file_name» на экспортированное имя.
Вы также можете использовать команду ‘nl’, как описано ниже:
Жесткие номера строк в текстовом файле с помощью команды nl
Снова замените «filename» и «filenamenumbered» на соответствующее имя файла, к которому вы добавляете номера строк:
nl -ba -s ':' имя_файла > имя_файланумеровано
Вот и все! Вы можете использовать любой трюк. Несколько читателей присоединились к комментариям, чтобы предложить более простые решения для нумерации строк в текстовом файле. Они были перечислены выше в порядке простоты, но ниже мы также предложим «awk»-решение.
-
Вы также можете использовать инструмент командной строки «awk», но он немного сложнее, чем методы, упомянутые выше, если вам интересно, запустите терминал и понеслось.
Во-первых, обязательно создайте резервную копию текстового файла на случай, если что-то пойдет не так (например, синтаксическая ошибка). Теперь, когда вы сделали резервную копию рассматриваемого текстового файла, давайте запишем в него номера строк:
"awk &39;{printf(%5d : %s\n, NR, $0)}&39; имя файла > имя_файла "
filename — это исходный файл, а filenamenumbered — это то, что вы хотите назвать выводом команды awk с прикрепленными к нему номерами строк. Ваш выходной текстовый документ теперь будет иметь число, за которым следует двоеточие перед каждой строкой:
1: строка со словами 2: строка со словами 3: строка со словами
Ваш исходный текстовый файл должен остаться без изменений, но если вы допустили синтаксическую ошибку, созданный вами резервный файл спасет ваш день. Эта команда будет работать в любой ОС Unix с поддержкой awk, поэтому не стесняйтесь запускать эту команду в FreeBSD, Linux, Mac OS X или любом другом варианте, который вы можете придумать.