- Урок 12. Как редактировать файл в терминале Linux — редактор Nano
- Изменение текстового файла linux
- пУОПЧОЩЕ РПОСФЙС
- ъБРХУЛ ТЕДБЛФПТБ vi
- Команды Linux для работы с файлами
- 1. ls — просмотр содержимого папки
- 2. cd — изменить папку
- 3. rm — удалить файлы
- 4. rmdir — удалить папку
- 5. mv — перемещение файлов
- 6. cp — копирование файлов
- 7. mkdir — создать папку
- 8. ln — создание ссылок
- 9. chmod — изменить права
- 10. touch — создать файл
- 11. mc
- Выводы
Урок 12. Как редактировать файл в терминале Linux — редактор Nano
Работая в Linux часто придется иметь дело с текстовыми файлами. Например, конфигурационные файлы системы представляют собой обычные текстовые файлы. Поэтому очень важно уметь их редактировать.
Существует множество редакторов, которые позволяют редактировать файлы в консольном и графическом режимах.
В данном уроке мы просто познакомимся с одним из наиболее популярных редакторов и изучим лишь базовые принципы работы с ним.
Редактор nano я вляется простым в освоении и может быть полезен для начинающих. С помощью него можно создавать новые и редактировать существующие файлы.
Редактор состоит из 4-х областей:
1-я область — отображает версию редактора и название файла.
2-я область — редактируемая часть, отображает содержимое файла.
3-я область — строка состояния, отображает реакцию редактора на определенные действия пользователя.
4-я область — подсказка команд.
Синтаксис команды следующий:
nano [опции] файл
Попробуем понять работу редактора на основе примера. У нас имеется файл Configuration.txt . Необходимо сделать следующее:
- Создать новый текстовый файл Example.txt
- В файле Configuration.txt найти 28-ю строчку
- Начиная с 28-й строки выделить и скопировать в буфер 10 строк текста
- Вставить текст из буфера в файл Example.txt
- Закрыть файл Configuration.txt
- В файле Example.txt найти и удалить строки, которые содержат слово “configuration”
- Затем в конец файла добавить произвольный текст
- Сохранить изменения в файле и закрыть
1) Создадим файл Example.txt:
Перед закрытием файла сохраняем его, иначе он не будет создан. Для этого выполним комбинацию Ctrl + O . В области подсказок указано как ^O , то есть ^ означает Ctrl:
Редактор запросил имя файла для подтверждения. Нажимаем Enter и можно закрывать. Для этого набираем комбинацию Ctrl + X ( ^X ) .
2) Теперь откроем файл Configuration.txt в multi-buffer режиме.
Что это за режим?
Когда мы редактируем файл, то все изменения остаются в текущем буфере и мы можем ими манипулировать. При закрытии файла закрывается и сам буфер, а вместе с ним и все данные. То есть мы можем работать одновременно с одним файлом.
Если необходимо работать сразу с несколькими файлами, то откроем файлы в multi-buffer режиме с помощью опции -F ( —multibuffer ):
nano -F Configuration.txt
Чтобы найти нужную строку наберем Ctrl +Shift + — ( ^_ ) и введем номер:
Курсор перейдет в указанную строку:
3) Теперь выделим текст для копирования. Для этого наберем Ctrl + 6 и редактор установит метку для выделения текста:
Теперь с помощью клавиш вперед/назад/вверх/вниз можно выделять текст:
Когда текст выделен скопируем его в буфер обмена с помощью Alt + Shift + 6
4) Теперь, не закрывая сам файл Configuration.txt , мы откроем файл Example.txt . Для этого наберем комбинацию Ctrl + R ( ^R ) и введем название файла Example.txt:
После этого мы окажемся в файле Example.txt . Теперь вставим скопированный текст с помощью комбинации Ctrl + U :
5) Так как файл Configuration.txt нам больше не нужен мы его закроем.
Но как? Ведь мы находимся в файле Example.txt .
Для этого достаточно набрать Alt + . и редактор переключит нас в другой файл. Набираем Ctrl + X для выхода. Файл закрывается и мы сразу возвращаемся в Example.txt .
6) Попробуем найти строки со словом “configuration” — Ctrl + W ( ^W ):
Слово найдено, однако это может быть не единственное слово. Как найти остальные?
Очень просто. Воспользуемся Alt + W ( m — W ) для перехода к следующему найденному слову.
Теперь в ыделим найденные строки с помощью Alt + 6 и стрелок, а затем удалим с помощью Ctrl + K ( ^K ).
7) Думаю добавить произвольный текст не составит труда.
8) Теперь сохраним и закроем файл. Сделать это можно с помощью Ctrl + X .
Этих команд для начала хватит. Если возникнут трудности, то всегда можно открыть справку комбинацией Ctrl + G ( ^G ).
Итак подведем итог по “горячим клавишам”:
Ctrl + G — справка, помощь
Ctrl + O — сохранить файл
Ctrl + X — закрыть файл
Ctrl + R — открыть новый файл
Ctrl + 6 — выделить текст
Alt + Shift + 6 — скопировать файл
Ctrl + K — вырезать текст
Ctrl + U — вставить текст
Ctrl + W — поиск слова
Alt + W — продолжить поиск
Ctrl + Shift + — — переход к указанной строке
Alt + . — переключение между файлами в multi buffer режиме
Nano имеет и дополнительные опции, кроме того, при написании программного кода для удобства можно определенные слова выделять цветом. Для этого необходимо поменять настройки в файле /etc/nanorc.
Источник
Изменение текстового файла linux
фЕЛУФПЧЩН ТЕДБЛФПТПН (text editor) ОБЪЩЧБАФ РТПЗТБННХ, ЛПФПТБС РТЕДОБЪОБЮЕОБ ДМС ТЕДБЛФЙТПЧБОЙС (УПУФБЧМЕОЙС Й ЙЪНЕОЕОЙС) ЖБКМПЧ, УПДЕТЦБЭЙИ ФПМШЛП ФЕЛУФ, ОБРТЙНЕТ: РЙУШНП, РТПЗТБННБ ОБ СЪЩЛЕ C, УЙУФЕНОЩК ЛПОЖЙЗХТБГЙПООЩК ЖБКМ. рТЙ ФПН, ЮФП ЙНЕЕФУС НОПЗП ТБЪМЙЮОЩИ ТЕДБЛФПТПЧ ДМС УЙУФЕНЩ Linux, ЕДЙОУФЧЕООЩК, ЮШЈ РТЙУХФУФЧЙЕ ВХДЕФ ЗБТБОФЙТПЧБОП Ч МАВПК УЙУФЕНЕ UNIX ЙМЙ Linux љ— ЬФП vi (visual editor). тЕДБЛФПТ vi ОЕ СЧМСЕФУС УБНЩН РТПУФЩН Ч ЙУРПМШЪПЧБОЙЙ, Й ЕЗП ЙОФЕТЖЕКУ ОЕ ПЮЕОШ РПОСФЕО УБН РП УЕВЕ. пДОБЛП ЧЧЙДХ УЧПЕК ТБУРТПУФТБОЈООПУФЙ, Б ПФЮБУФЙ Й РПФПНХ, ЮФП ЧМБДЕОЙЕ ЙН Ч ОЕЛПФПТЩИ УЙФХБГЙСИ ОЕПВИПДЙНП, ЕНХ РПУЧСЭБЕФУС ЧОЙНБОЙЕ Ч ЬФПК ЛОЙЗЕ.
чЩВПТ ФЕЛУФПЧПЗП ТЕДБЛФПТБ ПВЩЮОП СЧМСЕФУС ЧПРТПУПН ЙОДЙЧЙДХБМШОПЗП ЧЛХУБ. нОПЗЙЕ РПМШЪПЧБФЕМЙ РТЕДРПЮЙФБАФ РЩЫОЩК, НПЭОЩК Й ОБДЕМЈООЩК РПДУЛБЪЛБНЙ ТЕДБЛФПТ emacs. ьФПФ ТЕДБЛФПТ ЙНЕЕФ ВПМШЫЕ ЖХОЛГЙК, ЮЕН МАВБС ДТХЗБС РТПЗТБННБ Ч НЙТЕ UNIX. л РТЙНЕТХ, Ч ТЕДБЛФПТЕ emacs ЙНЕЕФУС УПВУФЧЕООЩК ЧУФТПЕООЩК ДЙБМЕЛФ СЪЩЛБ РТПЗТБННЙТПЧБОЙС LISP. лТПНЕ ФПЗП, Х ЬФПЗП ТЕДБЛФПТБ ЙНЕЕФУС НОПЦЕУФЧП ТБУЫЙТЕОЙК (ПДОП ЙЪ ОЙИ љ— РТПЗТБННБ ЙУЛХУУФЧЕООПЗП ЙОФЕММЕЛФБ ФЙРБ РТПЗТБННЩ Eliza). пДОБЛП, РПУЛПМШЛХ УБН ТЕДБЛФПТ Й ЖБКМЩ, ЛПФПТЩЕ ЕЗП РПДДЕТЦЙЧБАФ, УТБЧОЙФЕМШОП ЧЕМЙЛЙ, ЬФПФ ТЕДБЛФПТ НПЦЕФ ОЕ ВЩФШ ХУФБОПЧМЕО ОБ ОЕЛПФПТЩИ УЙУФЕНБИ. оБРТПФЙЧ, ТЕДБЛФПТ vi СЧМСЕФУС ОЕВПМШЫЙН Й НПЭОЩН, ПДОБЛП ЙУРПМШЪПЧБФШ ЕЗП УМПЦОЕЕ. фЕН ОЕ НЕОЕЕ, РТЙ ЪОБЛПНУФЧЕ У ТЕДБЛФПТПН vi ПО Ч ДЕКУФЧЙФЕМШОПУФЙ ПЛБЪЩЧБЕФУС ПЮЕОШ РТПУФЩН.
ч ЬФПН ТБЪДЕМЕ ДБЈФУС МЙЫШ ЧЧЕДЕОЙЕ Ч vi љ— НЩ ВХДЕН ПВУХЦДБФШ ОЕ ЧУЕ ЕЗП ЖХОЛГЙЙ, Б МЙЫШ ОХЦОЩЕ ДМС ФПЗП, ЮФПВЩ ОБЮБФШ ТБВПФБФШ Ч ОЕН. дПРПМОЙФЕМШОХА ЙОЖПТНБГЙА НПЦОП РПМХЮЙФШ ЙЪ ЬЛТБООПК ДПЛХНЕОФБГЙЙ Л ЛПНБОДЕ vi .
пУОПЧОЩЕ РПОСФЙС
ч МАВПК НПНЕОФ РТЙ ТБВПФЕ Ч ТЕДБЛФПТЕ vi ЧЩ ОБИПДЙФЕУШ Ч ПДОПН ЙЪ ФТЈИ ТЕЦЙНПЧ ТЕДБЛФПТБ: ЛПНБОДОЩК ТЕЦЙН (command mode), ТЕЦЙН ЧЧПДБ (insert mode) Й ТЕЦЙН РПУМЕДОЕК УФТПЛЙ (last line mode).
рТЙ ЪБРХУЛЕ ТЕДБЛФПТБ vi ЧЩ ПЛБЪЩЧБЕФЕУШ Ч ЛПНБОДОПН ТЕЦЙНЕ. ч ЬФПН ТЕЦЙНЕ НПЦОП ДБЧБФШ ЛПНБОДЩ ДМС ТЕДБЛФЙТПЧБОЙС ЖБКМПЧ ЙМЙ РЕТЕКФЙ Ч ДТХЗПК ТЕЦЙН. оБРТЙНЕТ, ЧЧПДС x Ч ЛПНБОДОПН ТЕЦЙНЕ НЩ ХДБМСЕН УЙНЧПМ, ОБ ЛПФПТЩК ХЛБЪЩЧБЕФ ЛХТУПТ. лМБЧЙЫЙ-УФТЕМЛЙ РЕТЕНЕЭБАФ ЛХТУПТ РП ТЕДБЛФЙТХЕНПНХ ЖБКМХ. лБЛ РТБЧЙМП, ЛПНБОДЩ, ЙУРПМШЪХЕНЩЕ Ч ЛПНБОДОПН ТЕЦЙНЕ, УПУФПСФ ЙЪ ПДОПЗП ЙМЙ ДЧХИ УЙНЧПМПЧ.
пУОПЧОПК ЧЧПД Й ТЕДБЛФЙТПЧБОЙЕ ФЕЛУФБ ПУХЭЕУФЧМСЕФУС Ч ТЕЦЙНЕ ЧЧПДБ. рТЙ ЙУРПМШЪПЧБОЙЙ ТЕДБЛФПТБ vi ПУОПЧОПЕ ЧТЕНС, УЛПТЕЕ ЧУЕЗП, ВХДЕФ РТПЧПДЙФШУС ЙНЕООП Ч ЬФПН ТЕЦЙНЕ. рЕТЕИПД Ч ТЕЦЙН ЧЧПДБ ЙЪ ЛПНБОДОПЗП ТЕЦЙНБ ПУХЭЕУФЧМСЕФУС ЛПНБОДПК i (ПФ УМПЧБ insert). оБИПДСУШ Ч ТЕЦЙНЕ ЧЧПДБ, НПЦОП ЧЧПДЙФШ ФЕЛУФ Ч ФП НЕУФП, ЛХДБ ХЛБЪЩЧБЕФ ЛХТУПТ. чЩИПД ЙЪ ТЕЦЙНБ ЧЧПДБ Ч ЛПНБОДОЩК ТЕЦЙН ПУХЭЕУФЧМСЕФУС ЛМБЧЙЫЕК Esc .
тЕЦЙН РПУМЕДОЕК УФТПЛЙ љ— ЬФП УРЕГЙБМШОЩК ТЕЦЙН, Ч ЛПФПТПН ТЕДБЛФПТХ ДБАФУС УМПЦОЩЕ ЛПНБОДЩ. рТЙ ЧЧПДЕ ЬФЙИ ЛПНБОД ПОЙ ПФПВТБЦБАФУС Ч РПУМЕДОЕК УФТПЛЕ ЬЛТБОБ (ПФУАДБ РПЫМП ОБЪЧБОЙЕ ТЕЦЙНБ). оБРТЙНЕТ, ЕУМЙ ЧЧЕУФЙ Ч ЛПНБОДОПН ТЕЦЙНЕ ЛПНБОДХ : , ФП ПУХЭЕУФЧЙФУС РЕТЕИПД Ч ТЕЦЙН РПУМЕДОЕК УФТПЛЙ, Й НПЦОП ВХДЕФ ЧЧПДЙФШ ФБЛЙЕ ЛПНБОДЩ, ЛБЛ wq (ЪБРЙУБФШ ЖБКМ Й РПЛЙОХФШ ТЕДБЛФПТ vi ) ЙМЙ q! (ЧЩКФЙ ЙЪ ТЕДБЛФПТБ vi ВЕЪ УПИТБОЕОЙС ЙЪНЕОЕОЙК). ч ТЕЦЙНЕ РПУМЕДОЕК УФТПЛЙ ПВЩЮОП ЧЧПДСФУС ЛПНБОДЩ, ОБЪЧБОЙЕ ЛПФПТЩИ УПУФПЙФ ЙЪ ОЕУЛПМШЛЙИ УЙНЧПМПЧ. ч ЬФПН ТЕЦЙНЕ Ч РПУМЕДОАА УФТПЛХ ЧЧПДЙФУС ЛПНБОДБ, РПУМЕ ЮЕЗП ОБЦЙНБЕФУС ЛМБЧЙЫБ Enter , Й ЛПНБОДБ ЙУРПМОСЕФУС.
ъБРХУЛ ТЕДБЛФПТБ vi
оБЙМХЮЫЙН УРПУПВПН ХСУОЙФШ ДМС УЕВС ЧУЕ ЛПОГЕРГЙЙ ТЕДБЛФПТБ vi ВХДЕФ ЪБРХУФЙФШ ЕЗП Й ПФТЕДБЛФЙТПЧБФШ Ч ОЕН ОЕЛПФПТЩК ЖБКМ. ч РТЙЧПДЙНЩИ ОЙЦЕ « ЬЛТБОЮЙЛБИ » ВХДЕФ РПЛБЪБОП ЧУЕЗП ОЕУЛПМШЛП УФТПЛ ФЕЛУФБ, ЛБЛ ВХДФП ФЕЛУФПЧЩК ЬЛТБО ЙНЕЕФ РП ЧЩУПФЕ ЧУЕЗП 6 УФТПЛ ЧНЕУФП 24. уЙОФБЛУЙУ ТЕДБЛФПТБ vi ФБЛПЧ:
ЗДЕ filenameљ— ЙНС ЖБКМБ, ЛПФПТЩК ОБДП ТЕДБЛФЙТПЧБФШ.
ъБРХУФЙН ТЕДБЛФПТ vi Й УПЪДБДЙН ОПЧЩК ЖБКМ РП ЙНЕОЙ test ЛПНБОДПК
оБ ЬЛТБОЕ ВХДЕФ РТЙНЕТОП УМЕДХАЭБС ЛБТФЙОЛБ:
ПВПЪОБЮБЕФ РХУФЩЕ УФТПЛЙ, ЙОБЮЕ ЗПЧПТС, ХЛБЪЩЧБЕФ, ЮФП НЩ ОБИПДЙНУС Ч ЛПОГЕ ЖБКМБ. уЙНЧПМ _ ПВПЪОБЮБЕФ ЛХТУПТ.
Источник
Команды Linux для работы с файлами
Чтобы быть профессионалом в использовании терминала Linux, нужно научится управлять файлами через терминал. Это чуть ли не основа всего, включая редактирование конфигурационных файлов, сборку программ, администрирование и множество других вещей. Просмотр содержимого папок, переход между папками, создание и удаление файлов — это необходимая база, для удобной работы в терминале.
В этой статье мы рассмотрим самые часто используемые команды Linux для работы с файлами и каталогами, после их освоения терминал больше не будет казаться таким непонятным и объемлемым. Вот какие команды будут нас сегодня интересовать:
- ls — список файлов в директории;
- cd — переход между директориями;
- rm — удалить файл;
- rmdir — удалить папку;
- mv — переместить файл;
- cp — скопировать файл;
- mkdir — создать папку;
- ln — создать ссылку;
- chmod — изменить права файла;
- touch — создать пустой файл.
А теперь перейдем к подробному рассмотрению всех этих команд.
1. ls — просмотр содержимого папки
Команда ls позволяет вывести список файлов заданной папки, по умолчанию, будет выведен список файлов текущей папки:
Вы можете вывести список файлов из всех подкаталогов рекурсивно, для этого используйте опцию -R:
Чтобы вывести список файлов нужной папки, вы можете передать ее адрес утилите, например, /home:
Чтобы получить больше информации и вывести все имена файлов в виде списка используйте опцию -l:
2. cd — изменить папку
Команда cd позволяет изменить текущую папку на другую. По умолчанию, текущей считается домашняя папка, например, cd Desktop меняет папку на рабочий стол, если вы выполните ее из домашнего каталога:
Вы также можете указать полный путь к папке:
Команда cd .. переходит в папку, которая находится выше на одну в файловой системе:
Вы также можете вернуться в предыдущую рабочую папку:
3. rm — удалить файлы
Команда rm позволяет удалить файл. Будьте очень осторожны с ней, она не будет спрашивать подтверждения:
Например, rm file удалит файл с именем file, который находится в текущей папке. Как и в предыдущих вариантах, вы можете указать полный путь к файлу linux. Например:
Если вы хотите удалить папку, то нужно использовать опцию -r. Она включает рекурсивное удаление всех файлов и папок на всех уровнях вложенности:
rm -r /home/user/photo/
Будьте осторожны, потому что эта команда удаляет файлы безвозвратно.
4. rmdir — удалить папку
Команда rmdir позволяет удалить пустую папку. Например, команда rmdir directory удалит папку directory, которая находится в текущей папке:
Если вам нужно удалить папку с файлами, то нужно использовать утилиту rm вместе с опцией -r.
5. mv — перемещение файлов
Команда mv перемещает файл в новое место. Она также может использоваться для переименования файлов. Например, mv file newfile переименует файл file в newfile:
mv file newfile
Чтобы переместить файл в другую папку нужно указать путь к ней, например, переместим файл file в папку /home/user/tmp/
mv file /home/user/tmp/
6. cp — копирование файлов
Эта cp и mv — это похожие команды linux для работы с файлами. Они работают аналогичным образом, только исходный файл остается на своем месте.
cp file newfile
Вы также можете рекурсивно скопировать всю папку с помощью команды cp -r. Эта команда скопирует всю папку вместе со всеми файлами и вложенными папками в новое место. Например, скопируем папку /etc/:
cp -r /etc /etc_back
7. mkdir — создать папку
Команда mkdir позволяет создать новую папку mkdir test создаст папку в текущем каталоге:
Если нужно создать папку в другом каталоге, укажите полный путь к нему:
8. ln — создание ссылок
Утилита ln позволяет создавать жесткие и символические ссылки на файлы или папки. Для создания символической ссылки используется опция -s. Например, вы создадим ссылку на папку с загрузками:
ln -s /home/user/Downloads/ /home/user/test/
Для создания жесткой ссылки никаких опций задавать не нужно:
ln /home/user/Downloads/ /home/user/test/
9. chmod — изменить права
chmod позволяет изменить права доступа к файлам. Например, chmod +x script.sh добавляет флаг исполняемости к файлу script.sh:
chmod +x script.sh
Чтобы убрать флаг исполняемый используйте опцию -x:
chmod -x script.sh
Подробнее о том, как работают разрешения для файлов смотрите в статье права доступа к файлам в Linux.
10. touch — создать файл
Команда touch создает пустой файл. Например, touch file создаст пустой файл в текущей папке с именем file:
Для создания файлов через терминал существует еще несколько команд, они рассмотрены в статье как создать файл в linux.
11. mc
Работа с файлами Linux через терминал может выполняться не только с помощью обычных консольных команд, каждая из которых выполняет только определенное действие. Вы можете использовать полнофункциональный файловый менеджер с псевдографическим интерфейсом на основе ncurses. Midnight Commander — это файловый менеджер, который можно использовать прямо в терминале. Для установки mc в Ubuntu выполните:
sudo apt install mc
После завершения установки достаточно выполнить команду mc:
Используйте клавиши со стрелками для перемещения по файлах, Tab для перехода на другую панель, Alt+1 для просмотра справки и Alt+2 для вывода меню:
Если терминальное окружение поддерживает мышь, то вы можете ее использовать в Midnight Commander.
Выводы
В этой статье мы рассмотрели как выполняется работа с файлами и каталогами в linux, с помощью терминала. Когда вы освоите все эти команды, вы сможете сделать большинство основных действий в терминале. А как часто вы пользуетесь терминалом? Используете его для работы с файлами? Напишите в комментариях!
Источник