Что-то вроде этого:
$ while read -r title
> do
> read -r url
> read -r uploader
> echo "Title is $title "
> echo "Url is $url "
> echo "Uploader is $uploader"
> done < file
Чтобы увидеть стиль переноса слов, который вы описали, используйте «мягкое обтекание» nano: Esc + $ .
Команда Esc + L , которую вы (и все) попробовали, выполняет «жесткую упаковку».
Обратите внимание на нотацию нажатия клавиш - если вы новичок в Linux, запись Esc + $ означает нажатие и отпускание Esc , а затем нажатие $ . Полная последовательность нажатия клавиш будет Esc , Shift + 4 .
(Это не означает удержание клавиши escape при нажатии $ .)
Источник: https://www.nano-editor.org/dist/ v2.9 / нано.html (ищите --softwrap)
Примечание об ошибках softwrap и форматирования - Если вы новичок в nano, будьте осторожны с softwrap. Если вы редактируете файл конфигурации или что-то еще, что чувствительно к новой строке или отступам, могут быть сделаны ошибки форматирования. Пока вы не освоитесь с поведением softwrap, я предлагаю выполнить быструю проверку с отключенным softwrap (повторите последовательность клавиш) перед сохранением.
Обратите внимание на доброту, предоставленную другими в их ответах ниже - потому что разные операционные системы и разные версии nano делают вещи немного по-разному:
Просто искал нанообертывание линии, и это дало высокие результаты, так что я выложу свои результаты для GNU nano 2.2.6 на Raspberry Pi, Raspbian GNU/Linux 7: Esc+L дал мне то же самое сообщение; но для того, чтобы обертывание линии вступило в силу, мне пришлось изменить линию. Как только я набрал другой символ на длинной строке, обертка сработала.
Я читаю здесь ответы, и мне нужно это исправить!
Nano поддерживает две разные формы переноса строк, и может быть важно знать разницу!
Во-первых, мета-клавиша ниже часто является клавишей Alt, но не обязательно.
Таким образом, если вы активируете его в файле, где оболочки имеют значение (файлы конфигурации, языки программирования, сценарии), вам, по сути, никогда не понадобятся жесткие оболочки строк, иначе это изменит смысл кода.
Кроме того, вы можете найти эти ярлыки с помощью ^ G (т.е. Ctrl - G ) в Nano.
Установка псевдонимов для редактора nano также работает хорошо.
Обычно я использую:
alias e='nano -\$cwS'
alias se='sudo nano -\$cwS'
Добавьте псевдонимы в конец вашего ~/.bashrc
, ~/.bash_aliases
или ваш любимый файл запуска оболочки.
Использование:
e [filename]
или версия sudo:
se [filename]
Используемые флаги/параметры:
\$
= Включить мягкий -перенос строк(экранированных с использованием обратной косой черты)c
= Показать постоянное положение курсора (внизу)w
= Отключить любой «жесткий перенос» S
= Плавная прокрутка
И (как уже упоминалось )один раз в редакторе используйте Esc , $ для включения/выключения мягкого -переноса.
Обычно открыть nanorc по адресу ~/.nanorc или /etc/nanorc, закомментировать строку
set nowrap
И раскомментируйте строку
set softwrap
Вы можете установить значения по умолчанию в ~/.nanorc
. Но имейте в виду, что настройки конфигурации для nano 1, nano 2 и nano 3 различаются.
На nano 1 у вас есть только настройка set nowrap
, которая отключает все переносы.
На nano 2 , set softwrap
были добавлены, которые включают программную упаковку и отключают жесткую упаковку. set nowrap
был изменен так, что он только отключает жесткую упаковку
На nano 3 , set softwrap
игнорируется, и nano продолжает выполнять жесткую переноску, если только вы не set nowrap
.
Таким образом, если вы хотите, чтобы перенос текста для длинных строк не нарушал ваши файлы конфигурации (только программный перенос ), это работает для версий 2 и 3:Добавьте следующие 2 строки до~/.nanorc
set nowrap
set softwrap
Уведомляем пользователей Mac, что версия Nano, поставляемая с High Sierra (v2.0.6 )или более ранней, не поддерживает плавный перенос строк, как описано здесь. Вы получите неизвестную ошибку команды. v2.2 — самая ранняя версия, в справочных страницах которой упоминается мягкая упаковка. Так что не тратьте час, пробуя все эти решения, как я.
Esc+L работает должным образом.