Это очень простая концепция, но я никогда не мог ее четко сформулировать. и я хотел бы попытаться записать его и посмотреть, где я ошибаюсь.Что такое символ новой строки - ' n'
Если мне нужно, как бы определить «символ новой строки». скажем, если я создам новый файл в unix (или windows), тогда файл сохраняет информацию о конце строки, вставив специальный символ в файл, называемый «новый символ строки». Если да, то какова его ценность ascii? Я помню, что в программах на C я проверял символ чтения на значение «\ n». И почему это запутанные 2 символов для представления символа конца строки ..
bash$ cat states
California
Massachusetts
Arizona
Скажем, я хочу, чтобы вставить одну строку между строками и хотите выход вида: Желаемая выход:
California
Massachusetts
Arizona
bash$sed -e 's/\n/\n\n/g' states does not work.
Почему я не могу лечить «новый символ линии» здесь, так как я бы рассматривал любого другого персонажа и запускал что-то вроде команды выше. (Я понимаю, что можно сказать, что это вопрос синтаксиса sed, но можно ли объяснить эту интуицию, не допуская этого, чтобы я мог избавиться от своей путаницы.
Аналогично, внутри редактора vim, Я не могу использовать:.?% s/\ п/\ п \ п/г Почему так
мне нужно дальше бежать \ п с помощью обратной косой черты в СЕПГ и внутри Vim ?. у
Спасибо ,
Jagrati
* И почему это запутанные 2 символов для представления символа конца строки. * - В программе, это не на самом деле два символа - это один символ, который «сбежал» с обратной косой черты. Компилятор понимает, что он представляет другое значение из обычного ASCII ** 'n' **. Экраны символов обычно используются на многих языках и платформах для представления символов, которые вы иначе не могли бы представлять. – GalacticCowboy
Разрабатывая то, что сказал Галактический Ковбой, '\ n' не является символом новой строки, это символ, который * представляет * символ новой строки в символах C и строковых литералах (и в некоторых других контекстах). Фактический реальный символ новой строки в исходном коде, конечно, был бы невидим, за исключением того, что он закончил бы линию. Вот почему у вас проблема с sed: '\ n' не представляет символ новой строки в этой программе. –
Клянусь, я читал «Что такое персонаж новичка -« \ n », поэтому устал – Enriquev