Как добавить номер строки, следуя вкладке в текстовый файл

Я попытался использовать

nl -ba -s '\t' full_media > full_media2 

Но он действительно не добавил вкладку, но добавил текст «\ t» после номера строки. Редактирование файла im является CSV-файлом, и здесь я пытаюсь добавить новый столбец в начало с id.

    One Solution collect form web for “Как добавить номер строки, следуя вкладке в текстовый файл”

    Если вы используете современную оболочку типа bash или zsh, используйте $ чтобы оболочка оценивала \t и заменяла ее фактической вкладкой:

     nl -ba -s $'\t' full_media > full_media2 

    Тем не менее, если вы изучите вывод, похоже, что разделитель по умолчанию – это вкладка:

     $ nl -ba -s $'\t' ~/at.sh | od -c 0000000 1 \tnohupsg $ nl -ba ~/at.sh | od -c 0000000 1 \tnohupsg 

    Действительно, разделителем по умолчанию является вкладка, как указано в POSIX. От man nl :

      -s sep Specify the characters used in separating the line number and the corresponding text line. The default sep shall be a <tab>. 

    Чтобы добавить столбец в CSV, попробуйте использовать Python:

     #! /usr/bin/env python2 from sys import stdin, stdout import csv csvin = csv.reader(stdin, delimiter='\t') csvout= csv.writer(stdout, delimiter='\t') count = 1 for row in csvin: csvout.writerow ([count] + row) count = count + 1 

    Сохраните его как скрипт (скажем nl.py ) и запустите:

     python2 nl.py < full_media > full_media2 
    Interesting Posts

    OpenBSD X, только мышь прокрутки вниз

    Запуск сценария bash из оболочки zsh

    Как получить второй столбец из вывода команды?

    «Нет такого файла или каталога» при выполнении кросс-скомпилированной программы на малиновой пи

    Экран Gnu: переназначить «ca ca», чтобы отправить «ca»

    В сценарии Cat in expect добавлена ​​новая строка до конца строки

    что означает «Чтение заголовка Swap:« Успех »означает?

    Как создать скрипт, который запускает другой скрипт в отдельном окне терминала и не ждет?

    autoreconf не работает с 'Can not exec' libtoolize "'

    Как добавить цвет фона с непрямоугольной формой в строку подсказки (PS1)?

    Изменение системного времени / даты

    Автоматически запускать файл в терминале при нажатии на него

    Mac Terminal: Повторите несколько предыдущих команд последовательно

    Использование файловой системы unix на внешнем жестком диске?

    Передача обычных файлов только на `sed -i`

    Linux и Unix - лучшая ОС в мире.