Как пользоваться текстовым редактором vim

Редактирование текстовых файлов

Чтобы отредактировать текстовый файл нужно открыть его в одном из редакторов.

Скорее всего у вас уже установлен либо nano либо

vi

Создать новый файл можно командой touch

touch new_file

Удалить файл можно командой rm

rm new_file

Создать сразу несколько файлов:

touch file1 file2 file3 file4

Чтобы создать файл с пробелами в имени нужно взять имя в кавычки:

touch ‘file with spaces in name’

Создать новую директорию можно командой mkdir

mkdir расшифровывается как Make Directory

mkdir new_folder

Если нужно создать вложенные директории — воспользуйтесь флагом -p (parent)

mkdir -p city/district/street

Чтобы создать директорию и сразу туда перейти используйте

mkdir example && cd $_

Чтобы выйти из текущего процесса нажмите CTRL + C

Лучше не использовать следующие символы для названий файлов и папок:

‘ » ` { } ( ) < > ! ? & ] : ; \ ^
$ @ ~ * #

Попробуйте открыть файл с помощью cat -vet

cat -vet somefile

Можно увидеть, что в конце строки стоит $ а также кодировку кириллических символов.

Просмотр файлов и папок в Linux

Более точная и подробная статья по поиску занятого места на диске.

Проверяем свободное место на всём диске:

df -h

Узнаём какие файлы хранятся в директории

ls

Список папок с занимаемыми размерами в корне сервера (сортировка директорий по алфавиту):

du -hs /*

Выводит список директорий и файлов построчно, сортируя их по возрастанию размера, а также показывает права доступа, размер файлов и дату изменения:

ls -lSr |more

Показывает размер и имена директорий и файлов (сортировка по размеру). В примере сортировка по размеру директории var.

du -sk /var/* | sort -rn

Ещё одна команда (показывает в мб) сортирует по размеру (в данном случае сортировка каталога с логами):

du -k /var/log/* | sort -nr | cut -f2 | xargs -d ‘\n’ du -sh

Блокировка правил

Существует ряд способов контроля поведения и реакции sudo на вызов.

К примеру, команда updatedb в сочетании с пакетом mlocate относительно безвредна. Чтобы обычный пользователь мог выполнять её с привилегиями суперпользователя, не вводя пароль, можно создать такое правило:

Команда NOPASSWD значит, что система не будет запрашивать пароль. Также существует команда PASSWD, которая отвечает за противоположное поведение и используется по умолчанию.

NOPASSWD распространяется на всё правило, если команда PASSWD не отменяет его. Например, строка может выглядеть так:

Ещё одна удобная команда – NOEXEC, которая используется для предотвращения опасного поведения определенных программ. К примеру, некоторые команды, такие как less, могут вызывать другие команды:

Эта команда выполняет любую команду с привилегиями пользователя, запускающего less, а это может быть очень опасно.

Чтобы запретить такое поведение, можно использовать следующую строку:

Делаем выбранный редактор, используемым по умолчанию

Для этого достаточно установить переменную окружения EDITOR: 

which nano 

/bin/nano 

export EDITOR=/bin/nano 

Первая команда (which nano) сообщает путь к выбранному редактору. Далее этот путь нам нужно указать в качестве значения переменной EDITOR. 

Вот только помните, что при следующем входе в систему переменная EDITOR будет установлена по умолчанию. Чтобы этого не произошло, нужно отредактировать файл.bashrc того пользователя, от имени которого будете редактировать конфигурационные файлы. В случае с root это будет файл /root/.bashrc:

cd ~ 

nano.bashrc 

В этот файл (рис. 4) нужно добавить команду: 

export EDITOR=/bin/nano 

Сохраните файл. Теперь нужно выйти из системы (команда exit) и снова войти (по SSH или через Web-консоль). После этого запустите любую команду, вызывающую стандартный текстовый редактор, например, crontab -e. Если вы увидели выбранный вами вариант, значит, все прошло нормально. В противном случае вы где-то допустили ошибку. 

Рис. 4. Редактирование.bashrc 

Рис. 5. При редактировании расписания (команда crontab -e) открылся nano. Настройка успешна 

В этой статье мы рассмотрели выбор текстового редактора и его установку в качестве редактора по умолчанию. Если у вас остались вопросы, обратитесь к специалистам технической поддержки Xelent.

Популярные услуги

Linux хостинг
Готовый Linux хостинг — универсальное решение для виртуальных проектов любого масштаба. Данная платформа используется в основном для разработки статических и динамических сайтов на основе популярных CMS (Drupal, Joomla и т. д.). Вы сами вправе выбирать, какой дистрибутив системы будет предустановлен на веб-сервере. С помощью панели управления клиенты могут в любой момент изменить конфигурацию оборудования.

Linux сервер
Высокопроизводительные VPS сервера Linux на без KVM-виртуализации идеально подходят для крупных интернет-проектов. В сочетании с этой операционной системой серверные компьютеры демонстрируют хорошую производительность, а SSD хранилища данных способствуют увеличению их быстродействия. У нас вы сможете взять в аренду VPS и VDS Linux сервера.

Ubuntu сервер

Облако на сервере Ubuntu поможет решить проблемы с масштабируемостью проектов. Под высокой нагрузкой сайту или web-приложению будет выделяться больше ресурсов. 

Основные команды Ubuntu

Основные операции в любой операционной системе связаны с файлами.

Создать файл в Ubuntu

Самый простой способ – с помощью редактора Nano. Следует ввести запись: nano файл.txt.

Более сложный редактор – программа vim. Выражение аналогично: vi файл.txt. Однако следует знать, что есть разные режимы ввода выражения: вставка и командный. С помощью кнопки Esc можно переключаться из одного режима в другой. Для выхода из второго варианта следует нажать :q, а для сохранения этого документа – :w.

Еще более простой вариант создания файла – способ его введения с помощью оператора перераспределения: > файл. Дальше можно вводить любые знаки. Для сохранения нужно нажать клавиши Ctrl, D.

Как открыть файл через терминал Ubuntu

Для открытия документов есть 2 утилиты: cat и tac. Одна выводит данные в прямом порядке запроса, а другая – в обратном. В этом их существенная разница. Язык же выражений у этих утилит одинаков. В целом запрос запишется так: утилита – опции –адрес_файла.

Редактирование файла в терминале Ubuntu

Есть в линукс для этого 2 программы: nano и vim. Первая для новичков, вторая для профессионалов. Их отличия:

  1. Nano. Перемещение по исследуемому объекту осуществляется с помощью стрелок. Для сохранения документа следует нажать кнопки Ctrl, O, а для выхода – Ctrl,X.
  2. Vim. Это более гибкая система. Здесь есть 2 режима: вставки и командный. Они дают множество различных привилегий для работы с такими документами.

Выше описаны пути входа в эти редакторы.

Как скопировать файл через терминал Linux

Для перемещения документа из одного каталога в другой достаточно ввести запись: mv

Для простого копирования нужно просто заменить mv на cp.

Как удалить файл через терминал Ubuntu

Следует понимать, что в системе Линукс удаляются объекты окончательно.

Есть 2 выражения для этого процесса: с помощью rm, rmdir. Первая удаляет конкретный документ, а вторая папку (только в том случае, если она полностью пустая).

Команда перезагрузки в Ubuntu

В этом случае следует открыть терминал, ввести соответствующую запись. Ввести пароль и нажать Enter.

Еще один способ перезагрузки – нажать кнопку на панели и выбрать соответствующий пункт.

Выключение через консоль Ubuntu

Самый простой случай – использование сочетаний клавиш SysRq.

Еще можно использовать выражение shutdown. В общем виде запись будет представлена так: $ shutdown .

Открытие и создание файлов

Чтобы открыть существующий файл или создать новый файл, введите и имя файла:

Это открывает новое окно редактора, и вы можете начать редактирование файла.

Внизу окна находится список основных сочетаний клавиш для использования с редактором nano.

Все команды начинаются с символа или Символ каретки ( ) представляет собой . Например, команды означают одновременное нажатие и Буква представляет собой .

Вы можете получить список всех команд, набрав .

Чтобы открыть файл, у вас должны быть права на чтение файла.

Если вы хотите открыть файл с курсором на определенной строке и символе, используйте следующий синтаксис:

Если вы опустите курсор будет помещен на первый символ.

Как создать файл в редакторе нано

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

Например, чтобы создать новый файл с именем greetings.txt, выполнить:

Эта команда откроет пустой редактор GNU Nano. На экране редактора будет показана версия Nano и имя файла.

Открытие пустого файла с помощью Nano

В самом низу находится набор сочетаний клавиш для работы с Nano. Все сочетания клавиш начинаются с символа каретки ( ^ ). Этот символ обозначает клавишу Ctrl на клавиатуре.

Например, ^O означает нажать Ctrl + O.

Чтобы получить список всех команд, нажмите Ctrl + g. Откроется текст справки Nano.

Текст справки Nano

Утилита MV для переименования файла Linux

В системе Линукс есть стандартная команда «mv». Обычно она доступна по молчанию, используется для перемещения файлов, что при некоторых условностях одновременно является и их переименованием.

Как выглядит синтаксическая структура команды:

Пользователю ОС Линукс могут пригодиться в работе следующие опции mv:

  • -f – замена существующего файла.
  • -i – запрос на необходимость замены файлов.
  • -n – отказ от замены файлов.
  • -u – замена тех файлов, которые были видоизменены.
  • -v – демонстрация перечня обработанных файлов.

Итак, как переименовать файл Линукс при помощи стандартной программы? Для этого необходимо ввести в терминале название вспомогательной программы + текущее имя файла + новое название для файла.

Как видно из скриншота выше, команда mv переименовала файл «oldfile» в «newfile».

При необходимости переместить его из одного каталога в другой, это можно сделать с указанием полного пути например так:

Результат выполнения будет такой же.

Чтобы беспрепятственно переместить документ, нужно иметь права на запись в конкретный каталог. Что делать, если прав нет, и папка принадлежит иному юзеру системы?

Ответ: придется запускать утилиту через sudo или su.

Atom

Atom это редактор с открытым исходным кодом, разработанный GitHub. Он подойдет любому разработчику, от нуба до эксперта. Самое большое преимущество Atom заключается в его настраиваемости для любых потребностей и одновременно в возможности начать работу сразу же, не заглядывая в конфиги.

Atom предлагает несколько вариантов настройки для изменения внешнего вида и поведения по вашему вкусу. Если вы знакомы с HTML и JS, вы можете даже наладить вид и поведение внеся некоторые изменения в UI. Все эти свойства делают Atom лидером нашего списка.

Особенности редактора кода Atom

  • Кросс-платформенное редактирование: Atom доступен не только в Linux, но также и на других платформах, таких как Windows и Mac.
  • Встроенный менеджер пакетов позволяет вам с легкостью искать и инсталлировать новые пакеты.
  • Умное автодополнение: благодаря этой разумной, гибкой функции Atom вы можете писать код быстрее.
  • Браузер файловой системы позволяет с легкостью искать и открывать отдельные файлы, целый проект или несколько проектов в одном окне.
  • Множество панелей: вы можете сравнивать и редактировать код в разных файлах, разбив интерфейс на несколько отдельных панелей.

За:

  • Мощность и простота
  • Богатство настроек

Против:

Новичкам придется поработать с этим редактором некоторое время, чтобы научиться использовать его функционал в полной мере.

Установка Atom в Linux

Если вы используете Ubuntu или его производные, вы можете установить Atom с помощью PPA, запустив следующие команды:

  • sudo add-apt-repository ppa:webupd8team/atom
  • sudo apt-get update
  • sudo apt-get install atom

Если вы используете Debian или дистрибутивы Linux на основе Fedora, вы можете воспользоваться пакетами .deb и .rpm. В настоящее время Atom есть лишь для 64-битных систем.

Что такое Visudo?

Команда sudo настраивается при помощи файла /etc/sudoers.

Важно! Никогда не редактируйте этот файл при помощи обычного текстового редактора! Для этого следует использовать visudo. Неправильный синтаксис, добавленный в этот файл, может полностью нарушить распределение прав между пользователями

Потому для работы с этим файлом используется команда visudo

Неправильный синтаксис, добавленный в этот файл, может полностью нарушить распределение прав между пользователями. Потому для работы с этим файлом используется команда visudo.

Команда visudo открывает файл в обычном текстовом редакторе, но во время сохранения файла проверяет его синтаксис. Это позволяет избежать ошибок в конфигурации.

Как правило, visudo открывает файл /etc/sudoers в редакторе vi. В системе Ubuntu visudo использует nano.

Чтобы настроить команду visudo для использования vi в системе Ubuntu, выполните команду:

There are 3 choices for the alternative editor (providing /usr/bin/editor).
Selection    Path                Priority   Status
————————————————————
* 0            /bin/nano          40        auto mode
1            /bin/nano           40        manual mode
2            /usr/bin/vim.basic   30        manual mode
3            /usr/bin/vim.tiny    10        manual mode

Выберите число, соответствующее текстовому редактору, который вы хотите использовать.

В системе CentOS это значение можно изменить, добавив в ~/.bashrc строку:

Чтобы обновить настройки, введите:

Чтобы открыть /etc/sudoers, введите:

Просмотр файлов

Чтобы открыть содержимое текстового файла выполните cat имя_файла или less имя_файла

cat textfile

less book1

cat выведет содержимое в консольный вывод. less откроет файл во всё окно.

Навигация по файлу, открытому с помощью less, осуществляется также как и по man.

Пробел вниз
b вверх
поиск
n следующий результат поиска
q закрыть

Если вы пытаетесь открыть бинарный файл с помощью less, то можете получить предупреждение

«file1» may be a binary file. See it anyway?

cat откроет такой файл без предупреждения

Чтобы продолжить нажмите y. Результат вас скорее всего не обрадует — получится трудночитаемый набор символов.

<C3>&NU_p<C6>x<E6><AC>^N<B4>E<EA>^B<D1>E^U<AB>^A3Fy<A3>^T^N<B5>7`^D<8E><F4><9F><8D>^M<E8>y<CD>^T6^A<DF>^T<83><8A>^F{џZ<8B><8C>p4S^G^TUs
<C5>H@<DB><C3>}*d<C0>$<D4>Q^@Fq<83>S.:<81>\ƌp<E6><83>ӭ»<9F>j <C8><E9>I<92>/<BD>.i)hB
\P(<A6>^B<D2>^Q<91><8A>)h^A*;<A9><96><DA><DA>K<86>Ve<8D>K<B0>Q<93><81><C9><C5>KU<F5>7X<B4>ۙ]<B6><A2>D<CC><C7>n<EC>^@9<E3><BD>RZ<8C><A5><E1>mv<D7><C4>~^^<B4><D7>4<F8><E7>^V<B7><91><89>a<F3>Sk<95>#<AE>3X<9A>7
<C4>^]’W<D4>m<EC>ml<B5>1<E7><DE><DC>X<89><9E><DB>^Q$Ђ]Y<B3><C7>B3<EA>^M`<FC>^P<D5><E3><87><U+009E>^Z<F0>Ǖ»<DD><8E><EB><C4>?^QtM
<EF>T<B6><BE><B7><D4>7<E9>f<D7><ED>% ^E@<B8>m<B1><90>I^@<8C><F0>Ol^ZՓĶ<D1><E8>ڶ<AB>5<9D><EC>0<E9><86>a6<F8><86><E6><F2><F3><B9><94>^C<F3>^L^Lם<FC>a<F0>-<F7><88>|Ur<D6><C8>M<9E><A7>Ỉ.<C8>=g<B7>u<92><D8><FA>g{g覺<88><D6>h<FE>^M\I<AA>,<A9>wu<A4>I=<DA>^PIY%<8C><B3>.9<EE><C5>q<8A>9^U<84>t:^?<88>,<EF><FC>;a<AE>Q^P^Vfc<80>^@<EA>I<AC>m'<C4>vZ<95><EC>v<90>y<9B>偮b<84>,<D1>^B^@u><87> <FD>(<F1><EE><9B>u<AC>xESC]<D2>ld<F2><EE><AF>4<E9><ED><E1>oGx<D9>G<EA>kESC<E1>̩&<95><A1><C2><D6>ѭƛ<A3><C7>kx͸<^Rb0рx#tm<9F><F7>G<E3>1<8D><C0><EA> <D4>mf<D4><EE><B4>اF<BB><B6><8E>9e<8C>uE}<C1>I<FA><EC>oʲ<F5><AF>^WiZF<B0>t<BB>ߴ$<A9>f<D7><D2>8<8F>(<90>+^Eg'<^@O'<B0><AE>^_O<D4>#<B7><F8><DB>i<AC>Gs^L<B6>:<FD><8C><F6>-$n<D8>^R<8F>I<F1>'<8A><B4><CD>^KN<B0><D4>.<8C><93><AD><A8>?<90><C7><D8>t
^E<81>'<D0>^Z<EE><FC>;<AD><DA>k<BA>y<BF><B1>Y<C4>»Y»<FD><F4>E^X<94>m<A4><80>{d^\^^<F4><9C>l<AE>I<A6>(«<8A>*U<80>Lr^O<S<87>ZJ*<A2><80>u^T<99><A0>V<9C>ɈSH:<D0>h^T<80>O<D4>PzQ<C6>x<E3>ڑ<BD><E9>1<86>=M!<CE>^?
<AD>)<C7>zi<F4>&<A4>^C<9A>(<FC>h<A0>

Чтобы закрыть окно с этими символами попробуйте нажать q или ввести команду reset

Для того, чтобы не попадать в такую ситуацию, можно проверять тип файла перед тем как его открывать. Это можно сделать командой file

file file1

file1: JPEG image data, JFIF standard 1.01, resolution (DPI), density 72×72, segment length 16, baseline, precision 8, 325×500, components 3

Оказывается file1 это не текст а изображение в формате JPEG

Попробовать открыть изображение из терминала можно командой xdg-open,
не факт, что она будет работать в вашей системе, у меня в

Ubuntu 20.4

получилось.

xdg-open file1

Общий синтаксис

find <где искать> <опции>

<где искать> — путь к корневому каталогу, откуда начинать поиск. Например, find /home/user — искать в соответствующем каталоге. Для текущего каталога нужно использовать точку «.».

<опции> — набор правил, по которым выполнять поиск.

* по умолчанию, поиск рекурсивный. Для поиска в конкретном каталоге можно использовать опцию maxdepth.

Описание опций

Опция Описание
-name Поиск по имени.
-iname Регистронезависимый поиск по имени.
-type

Тип объекта поиска. Возможные варианты:

  • f — файл;
  • d — каталог;
  • l — ссылка;
  • p — pipe;
  • s — сокет.
-size Размер объекта. Задается в блоках по 512 байт или просто в байтах (с символом «c»).
-mtime Время изменения файла. Указывается в днях.
-mmin Время изменения в минутах.
-atime Время последнего обращения к объекту в днях.
-amin Время последнего обращения в минутах.
-ctime Последнее изменение владельца или прав на объект в днях.
-cmin Последнее изменение владельца или прав в минутах.
-user Поиск по владельцу.
-group По группе.
-perm С определенными правами доступа.
-depth Поиск должен начаться не с корня, а с самого глубоко вложенного каталога.
-maxdepth Максимальная глубина поиска по каталогам. -maxdepth 0 — поиск только в текущем каталоге. По умолчанию, поиск рекурсивный.
-prune Исключение перечисленных каталогов.
-mount Не переходить в другие файловые системы.
-regex По имени с регулярным выражением.
-regextype <тип> Тип регулярного выражения.
-L или -follow Показывает содержимое символьных ссылок (симлинк).
-empty Искать пустые каталоги.
-delete Удалить найденное.
-ls Вывод как ls -dgils
-print Показать найденное.
-print0 Путь к найденным объектам.
-exec <команда> {} \; Выполнить команду над найденным.
-ok Выдать запрос перед выполнением -exec.

Также доступны логические операторы:

Оператор Описание
-a Логическое И. Объединяем несколько критериев поиска.
-o Логическое ИЛИ. Позволяем команде find выполнить поиск на основе одного из критериев поиска.
-not или ! Логическое НЕ. Инвертирует критерий поиска.

Полный набор актуальных опций можно получить командой man find.

4: Редактирование файлов

Теперь вы можете управлять файлами и каталогами сервера. В этом разделе вы научитесь редактировать содержимое файлов.

Команда nano – один из самых простых текстовых редакторов командной строки Linux. Редактор nano использует less и занимает терминал в течение всего времени работы.

Редактор nano может открыть существующие файлы или создать файл. Если вы хотите создать новый файл, вы можете присвоить ему имя при вызове редактора nano или во время сохранения файла.

Чтобы отредактировать file1, введите:

Приложение nano  откроет файл (который на данный момент пуст). Интерфейс выглядит так:

Вверху указывается имя приложения и имя редактируемого файла. В центре находится содержимое файла (в данном случае там нет ничего, поскольку файл пуст). В конце перечислены комбинации клавиш для управления редактором (символ ^ везде означает клавишу CTRL).

Чтобы запросить справку в редакторе, введите:

Чтобы закрыть справку, введите:

В редакторе можно вводить или изменять любой текст. Например, можно добавить в файл:

Чтобы сохранить изменения, нажмите CTRL-O. Программа попросит подтвердить имя файла, который вы хотите сохранить.

Как видите, внизу уже указаны другие опции. Редактор выводит их в зависимости от контекста (это означает, что они будут меняться в зависимости от того, что вы пытаетесь сделать). Если вы хотите сохранить изменения в file1, просто нажмите Enter.

Внесите в файл некоторые дополнительные изменения, попробуйте сохранить его и выйти из программы. После этого вы увидите:

Чтобы сохранить изменения, введите Y. Чтобы не сохранять, нажмите N. Чтобы не закрывать файл, нажмите CTRL-C. Если вы захотите сохранить изменения, программа предложит снова выбрать имя файла для сохранения. Чтобы сохранить в текущий файл и закрыть редактор, нажмите Enter.

Чтобы просмотреть содержимое файла, используйте cat или less.

В некоторых системах используется редактор vim или vi. Это более продвинутый и производительный редактор, но с ним сложно работать. Вместо vim или vi всегда можно использовать nano.

Аргументы

Когда вы выполнили cd Documents, cd это команда, Documents это агрумент (argument).

Чтобы увидеть скрытые файлы в директории выполните ls -a

Где a означает All

У скрытых файлов первый символ в назывании — это точка

ls -a

. .bashrc Desktop docker-lab .gnupg Music Public snap .sudo_as_admin_successful .Xauthority
.. .bash_history .cache .docker Documents .local node_modules Pictures python .ssh Templates yandex-tank
.bash_logout .config docker Downloads .mozilla notes.txt .profile shell_scripts ssh-com Videos yarn.lock

-a это специальный вид аргумента, который называется опция (option).

Опции добавляют командам дополнительный функционал.

Опции начинаются с символа

После можно перечислить несколько опций подряд

Чтобы увидеть дополнительную информацию о файлах выполните ls -l, l означает long format

ls -l

total 96
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Desktop
drwxrwxr-x 3 andrei andrei 4096 syys 17 19:09 docker
drwxrwxr-x 4 andrei andrei 4096 heinä 19 21:46 docker-lab
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Documents
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Downloads
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Music
drwxr-xr-x 2 root root 4096 heinä 18 22:11 node_modules
-rw-rw-r— 1 andrei andrei 1 syys 19 21:40 notes.txt
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Pictures
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Public
drwxrwxr-x 2 andrei andrei 4096 syys 19 12:54 python
drwxrwxr-x 2 andrei andrei 4096 syys 19 22:01 shell_scripts
drwxr-xr-x 3 andrei andrei 4096 syys 15 19:58 snap
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Templates
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Videos
drwxrwxr-x 3 andrei andrei 4096 heinä 16 16:55 yandex-tank
-rw-r—r— 1 root root 86 heinä 18 22:11 yarn.lock

Чтобы узнать какие ещё опции есть у команды ls выполните

man ls

Результатом этой команды будет подробное описание всех опций. Список
довольно длинный, чтобы перемещаться вниз по списку нажимайте пробел, чтобы
вернуться наверх нажимайте b

Чтобы выполнить поиск по слову введите слово. Чтобы перейти к
следующему результату поиска нажмите n

Чтобы закрыть man нажмите q

Подробнее про все опции ls читайте в статье

«man ls»

Чтобы увидеть дополнительную информацию о файлах, вкючая скрытые
и отсортировать выдачу по вермени изменения
выполните ls -lat

ls -lat

total 176
drwxr-xr-x 31 andrei andrei 4096 syys 20 10:20 .
-rw——- 1 andrei andrei 34 syys 20 10:20 .lesshst
-rw——- 1 andrei andrei 236 syys 20 10:16 .Xauthority
-rw——- 1 andrei andrei 17546 syys 19 23:40 .bash_history
drwxrwxr-x 2 andrei andrei 4096 syys 19 22:01 shell_scripts
-rw-rw-r— 1 andrei andrei 1 syys 19 21:40 notes.txt
drwxrwxr-x 2 andrei andrei 4096 syys 19 12:54 python
drwx—— 2 andrei andrei 4096 syys 17 19:19 .ssh
drwxrwxr-x 3 andrei andrei 4096 syys 17 19:09 docker
drwx—— 3 andrei andrei 4096 syys 15 20:04 .gnupg
drwxr-xr-x 3 andrei andrei 4096 syys 15 19:58 snap
drwxr-xr-x 15 andrei andrei 4096 syys 15 19:58 .cache
drwxr-xr-x 12 andrei andrei 4096 syys 15 19:58 .config
drwxrwxr-x 4 andrei andrei 4096 heinä 19 21:46 docker-lab
drwx—— 2 andrei andrei 4096 heinä 18 23:06 .docker
drwxr-xr-x 2 root root 4096 heinä 18 22:11 node_modules
-rw-r—r— 1 root root 86 heinä 18 22:11 yarn.lock
drwxrwxr-x 3 andrei andrei 4096 heinä 16 16:55 yandex-tank
drwxr-xr-x 4 andrei andrei 4096 heinä 16 15:08 .local
-rw-r—r— 1 andrei andrei 0 heinä 16 12:27 .sudo_as_admin_successful
drwx—— 5 andrei andrei 4096 heinä 16 12:12 .mozilla
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Desktop
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Documents
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Downloads
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Music
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Pictures
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Public
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Templates
drwxr-xr-x 2 andrei andrei 4096 heinä 16 12:11 Videos
-rw-r—r— 1 andrei andrei 220 heinä 16 11:53 .bash_logout
-rw-r—r— 1 andrei andrei 3771 heinä 16 11:53 .bashrc
-rw-r—r— 1 andrei andrei 807 heinä 16 11:53 .profile
drwxr-xr-x 3 root root 4096 heinä 16 11:53 ..

Командная строка Vim

Командная строка Vim запускается в командном режиме нажатием двоеточия — «». Здесь доступны команды для сохранения файла и выхода из редактора, настройки внешнего вида и взаимодействия с внешней оболочкой. Рассмотрим наиболее часто используемые команды редактора vim:

  • :w — сохранить файл;
  • :q — закрыть редактор;
  • :q! — закрыть редактор без сохранения;
  • :e файл — прочитать содержимое файла в позицию курсора;
  • :r файл — вставить в содержимое файла в следующую строку;
  • :r! — выполнить команду оболочки и вставить ответ в редактор;
  • :set переменная=значение — установить значение переменной, например, tabstop=4, или set number, с помощью этой команды можно управлять многими аспектами работы vim.
  • :buffers — посмотреть открытые файлы.

Со всеми основами разобрались, и вы теперь использование vim не будет казаться вам таким сложным. Но это еще далеко не все, этот мощный редактор может еще очень многое. Дальше мы рассмотрим несколько примеров использования vim, чтобы вам было легче справиться с новой программой.

Командный режим Vim

В командном режиме вы можете перемещаться по редактируемому тексту и выполнять действия над ним с помощью буквенных клавиш. Именно этот режим открывается по умолчанию при старте редактора. Здесь вы будете использовать краткие команды, перед которыми может устанавливаться номер, чтобы повторить команду несколько раз. Для начинающих может быть поначалу очень запутанно то, что в командном режиме символы интерпретируются как команды.

Для перемещения используются такие команды:

  • h — на один символ влево;
  • l — на один символ вправо;
  • j — на одну строку вниз;
  • k — на одну строку вверх;
  • w — на слово вправо;
  • b — на слово влево;
  • H — перейти в низ экрана;
  • G — перейти в конец файла;

Можете запустить редактор и поэкспериментировать, чтобы было легче понять как это работает. Если перед тем как нажать кнопку буквы нажать цифру, то эта команда будет повторена несколько раз. Например, 3j переведет курсор на три строки вверх.

Для переключения в режим редактирования используются такие команды:

  • i — вставить текст с позиции курсора, символ под курсором будет заменен;
  • I — вставить текст в начало строки;
  • a — добавить текст начиная от позиции курсора;
  • o — вставить новую строку после этой и начать редактирование;
  • O — вставить новую строку перед этой и начать редактирование;
  • r — заменить текущий символ;
  • R — заменить несколько символов.

К этим командам тоже применимы символы повторения. Поэкспериментируйте, можно получить интересный и не совсем ожиданный результат.

Более сложные команды редактирования текста. Вы можете править текст не только в обычном режиме, но и в командном с помощью команд. Для этого применяются такие команды:

  • d — удалить символ;
  • dd — удалить всю строку;
  • D — удалить символы начиная от курсора и до конца строки;
  • y — копировать символ;
  • yy или Y — скопировать всю строку;
  • v — выделить текст;

Эти команды редактора vim работают немного по-другому после нажатия одной из них ничего не произойдет. Мы еще можем задать количество символов, к которым будет применена команда и направление, с помощью кнопок перемещения курсора. Например, чтобы удалить два символа справа от курсора нажмите d3l, а чтобы удалить три строки вниз — d3j. Команды yy, dd, Y — не что иное, как сокращения.

Кроме этих команд, есть еще несколько полезных, которые мы не можем не рассмотреть:

  • p — вставить после позиции курсора;P — вставить перед позицией курсора;
  • u — отменить последнее действие;
  • . — повторить еще раз последнее действие;
  • U — отменить последнее действие в текущей строке;
  • /шаблон — искать вхождение;
  • %s/шаблон/заменить — заменить первое слово на второе;
  • n — продолжить поиск вперед;
  • N — продолжить поиск назад;

С основными командами разобрались. Но у нас есть еще командная строка Vim, которая сама по себе тоже представляет огромный интерес.

Что такое исполняемость?

Уже много написано о том, как установить флаг исполняемости. Но что происходит с файлом во время этого, что такое исполянемость и как это работает?

Программа — это набор инструкций, которые по очереди выполняет процессор над данными, чтобы получить определенный результат. Но это вы, наверное, уже знаете.

На самом деле для процессора нет разницы между данными и инструкциями. И те и другие состоят из байт, проще говоря цифр. Когда-то договорились, что определенные сочетания цифр будут означать то или иное действие процессора, а во всем остальном это те же данные. Поэтому для процессора нет никакой разницы что выполнять — исполняемый файл linux или обычный текстовый файл. Оба могут быть успешно выполнены, вот только во втором варианте инструкции не имеют никакого смысла.

Чтобы система могла определить какие файлы нужно выполнять, а какие лучше не надо и был придуман флаг исполняемости. По сути, флаг исполяемости — это несколько байт в файловой системе, которые говорят нужно выполнять файл или нет, само содержимое файла никак не изменяется. Со скриптами все работает точно так же, только команды из файла выполняет не процессор, а интерпретатор, например, в bash скриптах — сама оболочка bash. Да и в обычных программ тоже есть свой загрузчик — это ld-linux.so.2.

Заключение

Команды для терминала Линукс – самый оптимальный вариант управления Убунту. Однако есть свои тонкости, которые следует знать каждому пользователю.

Это еще одна инструкция для самых начинающих. В операционной системе довольно часто приходится редактировать файлы. Например, вам может понадобится создать какую-нибудь заметку с действиями, командами или другой информацией, но чаще всего приходится редактировать конфигурационные файлы для внесения различных настроек в систему.

Да, для многого придуман графический интерфейс, и уже почти все можно сделать в нем, но ручной способ все еще остается мощным и очень гибким путем настройки системы. В этой статье мы рассмотрим как редактировать файлы в Ubuntu. Мы будем рассматривать именно этот дистрибутив, потому что он самый популярный среди начинающих.

Перенаправление вывода

Вывод можно перенаправить в файл воспользовавшись > или >>

> удалит из файла предыдущие записи

Если вы выполните перенаправление два раза в один и тот же файл. Останется только последнее

Как видите, запись про ноутбуки не сохранилась

Как добавить запись в конец файла Bash

Чтобы не перезаписывать а добавлять новую строку нужно воспользоваться
>>

Результат работы команды можно направить в другую команду.

Если вы делаете листинг директории с большим количеством файлов
командой ls, например ls /usr/bin
результат не поместится на один экран.

Может быть удобно сразу направить этот вывод в less

ls /usr/bin | less

Чтобы найти в файле строки с упоминанием нужного слова нужно воспользоваться командой

grep

Допустим, у вас есть список партнёров сайта

andreyolegovich.ru

, который называется

partners.txt
.

Если выполнить

less partners.txt

Список получится очень длинным

После названия идёт категория, к которой относится партнёр.

Допустим, вы хотите найти всех партнёров категории Android

grep Android partners.txt

Этот список можно отсортировать в алфавитном порядке и сохранить в
файл

android_partners.txt

grep Android partners.txt | sort > android_partnets.txt

cat android_partners.txt

Подсчитаем сколько в этом списке партнёров в категории Education.

cut -f 2 partners.txt | grep Education | wc -l

4