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


Команды Linux для работы с файлами и каталогами (директориями) через терминал

Введение

В этом руководстве для начинающих пользователей мы ознакомимся с основными командами для работы с файлами и каталогами (иногда их еще называют директориями) в Linux-системах.

Требования

Cервер с Ubuntu 20.04

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

Расположение каталогов в файловой системе

При входе на сервер, вы, как правило, попадаете в домашний каталог вашей учетной записи, отведенный для хранения файлов и создания директорий.

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

pwd

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

/home/demo

Домашний каталог располагается после имени учетной записи пользователя, в приведенном примере он называется /demo. Этот каталог находится в каталоге с именем  /home и в каталоге верхнего уровня, который называется root или корневой каталог, поэтому представлен одной косой чертой /.

Просмотр содержимого каталогов

Для просмотра содержимого каталога используется команда ls. Название этой команды является сокращением слов list files.

Просмотреть содержимое любой директории можно следующими способами:

ls имя_директории

Либо введя команду:

ls /путь _к _директории

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

dir1 file1 file2 file3

К команде ls можно добавлять дополнительные флаги, например, чтобы показать детализированное представление (права, список владельцев файлов или папок, размер, дату последнего модифицирования) файлов и директорий в текущей директории, можно использовать флаг -l:

ls -l

Результат выполнения команды:

total 16 drwxr-xr-x 2 home demo 4096 Nov 3 17:40 dir1 -rw-r--r-- 1 home demo 13 Nov 8 17:17 file1 -rw-r--r-- 1 home demo 42 Nov 9 13:04 file2 -rw-r--r-- 1 home demo 42 Nov 10 13:04 file3

Для просмотра списка всех файлов, включая скрытые файлы и каталоги, вы можете добавить флаг  -a:

ls -a

Результат выполнения команды:

. dir1 file1 .mysql_history .ssh .. .bash_history file2 file3 .nan

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

ls -F

Результат выполнения команды:

dir1/ file1 file2 file3

Перемещение между каталогами

Для перехода в домашний каталог используется команда cd. Название этой команды является сокращением слов change directory.

Для перехода в домашний каталог пользователя user используется команда:

cd ~user

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

В Linux-системах каждый файл и каталог находятся в самой верхней директории, которая называется «корневой» и обозначается одним символом слэш /.

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

Каждый абсолютный путь должен начинаться с косой черты — символа слэш /.

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

cd ..

Для перехода в директорию двумя уровнями выше:

cd ../..

Операции с файлами и каталогами

У каждой команды имеется множество параметров, чтобы узнать их, наберите команду и параметр —help, например:

ls --help

Далее приведен список основных команд навигации в консоли Linux.

Создание

Создание файлов производится с помощью команды:

touch имя_файла

Создание каталогов выполняется с помощью команды вида:

mkdir имя_директории

Название этой команды является сокращением слов make directory.

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

mkdir имя_директории_1 имя_директории_2

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

mkdir -p /имя_директории_1/имя_директории_2

Удаление

Для удаления директорий используется команда rmdir имя_директории. Название этой команды является сокращением слов remove directory.

Для удаления файлов используется команда rm. Например, для удаления файла с именем file1 используется команда:

rm file1

Команда rm также позволяет удалять не только файлы, но и каталоги.

Для удаления директории с именем dir1 со всеми подкаталогами и файлами используется опция -r (от слова recursive):

rm -r dir1 

Можно удалить одновременно две директории со всем их содержимым:

rm -r имя_директории_1 имя_директории_2

Также можно использовать параметр -f, который означает, что при удалении не будет запрашиваться подтверждение.

Команда для удаления файла будет выглядеть так:

rm -f file1

Команда для удаления каталога:

rm -rf dir1

Перемещение

Для перемещения и переименования файлов и каталогов используется команда mv. Название этой команды является сокращением слова move.

Переименовать файл можно с помощью команды:

mv имя_файла новое_имя

Для того чтобы переместить файл, используется команда:

mv имя_файла путь/


Копирование

Для копирования используется команда cp. Название этой команды является сокращением слова copy.

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

cp file1 file2

Для того чтобы копировать директорию dir1 в директорию dir2, используется команда:

cp -a dir1/ dir2/

Скопировать файл с именем file1 в директорию с именем dir1, можно с помощью команды:

cp file1 dir1/ 

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

Мы ознакомились с основными командами для работы с каталогами и файлами.

Далее мы изучим, как редактировать файлы и добавлять в них содержание.

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

В результате ввода в терминал команды nano будет открыт чистый файл.

Интерфейс выглядит следующим образом:

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

В середине должно располагаться содержимое файла, в настоящее время оно пустое.

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

Для того чтобы открыть справку используйте сочетание клавиш CTRL-G.

Закрывается справка с помощью сочетания клавиш CTRL-X. После закрытия справки мы возвращаемся к редактированию.

Вводить и редактировать можно любой текст, например, можно ввести: “Hello World!”

Для сохранения внесенных изменений следует нажать сочетание клавиш CTRL-O. Внимание! Это буква О, а не ноль.

Далее система попросит вас ввести либо подтвердить имя файла, который вы хотите сохранить:

File Name to Write: ^G Get Help M-D DOS Format M-A Append M-B Backup File ^C Cancel M-M Mac Format M-P Prepend

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

После ввода имени файла нажмите клавишу ENTER.

Для того чтобы выйти из тестового редактора нажмите сочетание клавиш CTRL-X.

Если вы внесли изменения и не сохранили файл, вам будет предложено сохранить сделанные вами изменения:

Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES) ? Y Yes N No ^C Cancel

Вы можете нажать клавишу Y, чтобы сохранить изменения, клавишу N для отмены изменений и выхода, или сочетание клавиш CTRL-C, чтобы отменить операцию выхода из режима редактирования файла.

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

Нажмите клавишу ENTER, чтобы сохранить файл и выйти из редактора.

Заключение

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

Как редактировать файл HOSTS в Linux Ubuntu

В операционной системе Windows, в расположении %windir%\System32\drivers\etc находится небольшой файл, который служит своего рода шлюзом между программным обеспечением и интернетом. Как вы уже догадались, это файл HOSTS. Когда программа обращается к какому-нибудь веб-ресурсу по доменному имени, она в первую очередь просматривает этот файл, а нет ли в нём указания на соответствующий доменному имени цифровой IP-адрес сайта.

Если нет, запрос отправляется на сервер DNS, если есть, осуществляется переадресация на указанный IP-адрес, так как файл HOSTS имеет более высокий приоритет, чем удаленный сервер доменных имен.

Эта особенность позволяет пользователям перенаправлять запросы на нужные ресурсы, в том числе на локальный компьютер, осуществляя таким образом блокировку сайтов. Файл HOSTS имеется не только в Windows, но также и Linux, MacOS и Android, правда, в последней операционной системе для получения к нему доступа требуются права root.

Работа с файлом HOSTS в Linux практически ничем не отличается от работы с ним же в Windows. Чтобы его открыть, используем команду sudo nano /etc/hosts в терминале.

Файл будет открыт в текстовом редакторе nano.

Также вы можете перейти в расположение /etc во встроенном файловом менеджере и открыть файл текстовым редактором по умолчанию, но в этом случае он будет доступен только для чтения, поэтому всё же лучше и удобнее использовать терминал.

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

Синтаксис тот же, что и в Windows: IP-адрес домен, например, 127.0.0.1 facebook.com.

Префикс http или https не указывается, в противном случае конфигурация работать не будет, а вот для поддомена www создать отдельную запись необходимо: 127.0.0.1 www.facebook.com.

Да, есть еще один момент, о котором не помешает знать.

Вначале мы сказали, что первым делом система смотрит содержимое файла HOSTS, но это по умолчанию, в Ubuntu изменить порядок поиска соответствий доменных имен можно путем редактирования конфигурационного файла nsswitch.conf, открыв его командой sudo nano /etc/nsswitch.conf.

В строке hosts указан порядок служб поиска IP-адреса для доменного имени, обратите внимание, что в начале строки стоит не «dns», а «files», определяя тем самым приоритет поиска соответствий в локальном файле HOSTS.

Основные linux-команды для новичка / Хабр

Linux — это операционная система. Как винда (windows), только более защищенная. В винде легко подхватить вирус, в линуксе это практически невозможно. А еще линукс бесплатный, и ты сам себе хозяин: никаких тебе неотключаемых автообновлений системы!

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

Я дам кратенькое описание основных команд с примерами (примеры я все проверяла на cent os, red hat based системе) + ссылки на статьи, где можно почитать подробнее. Если же хочется копнуть еще глубже, то см раздел «Книги и видео по теме». А еще комментарии к статье, там много полезного написали)

Содержание


Где я? Как понять, где находишься

Команда pwd:

pwd --- мы ввели команду /home/test --- ответ системы, мы находимся в домашней директории пользователя test

Очень полезная команда, когда у вас нет ничего, кроме командной строки под рукой. Расшифровывается как

P

rint

W

orking

D

irectory. Запомните ее, пригодится.

Как понять, что находится в папке

Команда ls позволяет просмотреть содержимое каталога:

Хотя лучше использовать команду сразу с флагом «l»:

ls -l

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

У команды есть и другие флаги, но чаще всего вы будете использовать именно «ls – l».

См также:
Команда ls Linux — подробнее о команде и всех ее флагах
Команда ls – просмотр каталога — о команде для новичков (без перечисления всех флагов)

Как перейти в другую директорию

С помощью команды cd:

cd <путь к директории>

Путь может быть абсолютным или относительным.

По абсолютному пути

Либо у вас где-то записан путь, «куда идти», либо вы подсмотрели его в графическом интерфейсе (например, в

WinSCP

).

Вставляем путь в командную строку после «cd»

cd /home/student/log

Ну вот, мы переместились из домашней директории (обозначается как ~) в

/home/student/log

.

По относительному пути

Относительный путь — относительно вашей текущей директории, где вы сейчас находитесь. Если я уже нахожусь в

/home/student

, а мне надо в

/home/student/log

, команда будет такой:

cd log --- перейди в папку log из той директории, где ты сейчас находишься

Если мне надо из

/home/student/photo

в

/home/student/photo/city/msk/2017/cat_1

, команда будет такой:

cd city/msk/2017/cat_1

Я не пишу

/home/student/photo

, так как я уже там.

В линуксе можно задавать путь относительно домашней папки текущего пользователя. Домашняя директория обозначается ~/. Заметьте, не ~, а именно ~/. Дальше вы уже можете указывать подпапки:

cd ~/log

Эта команда будет работать отовсюду. И переместит нас в

/home/user/log

.

Вот пример, где я вошла под пользователем students. Исходно была в директории /var, а попала в /home/students/log:

С автодополнением

Если вы начнете набирать название папки и нажмете Tab, система сама его подставит. Если просто нажмете Tab, ничего не вводя, система начнет перебирать возможные варианты:

(cd tab) Может, ты имел в виду папку 1?
(tab) Нет? Может, папку 2?
(tab) Снова нет? Может, папку 3?
(tab) Снова нет? Может, файл 1 (она перебирает имена всех файлов и директорий, которые есть в той, где вы сейчас находитесь)?
(tab) У меня кончились варианты, поехали сначала. Папка 1?

cd lon(Tab) → cd long-long-long-long-name-folder — начали вводить название папки и система сама подставила имя (из тех, что есть в директории, где мы находимся).

cd (Tab)(Tab)(Tab) — система перебирает все файлы / папки в текущей директории.

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

Подняться наверх

Подняться на уровень выше:

cd ..

Если нужно поднять на два уровня выше, то

cd ../..

И так до бесконечности =) Можно использовать файл, лежащий на уровне выше или просто сменить директорию.

Обратите внимание, что команда для линукса отличается от команды для винды — слеш другой. В винде это «cd ..\..», а в линуксе именно «cd ../..».

См также:
Путь к файлу в linux

Как создать директорию

Используйте команду

mkdir

:

mkdir test --- создает папку с названием «test» там, где вы находитесь

Можно и в другом месте создать папку:

mkdir /home/test --- создает папку «test» в директории /home, даже если вы сейчас не там

Когда это нужно? Например, если вам надо сделать бекап логов. Создаете папку и сохраняете туда нужные логи. Или если вы читаете инструкцию по установке ПО и видите там «создать папку». Через командную строку это делается именно так.

См также:
Как создать каталог в Linux с помощью команды mkdir

Как создать файл

Командой

touch

:

touch app.log

Такая команда создаст пустой файл с названием «app.log». А потом уже можно открыть файл в редакторе и редактировать.

Как отредактировать файл

Вот честное слово, лучше делать это через графический интерфейс!

Но если такой возможности нет, чтож… Если использовать программы, которые есть везде, то у вас два варианта:

  1. nano — более простая программа, рассчитана на новичков
  2. vim — более сложная, но позволяет сделать кучу всего

Начнем с nano. Указываете имя команды и путь в файлу:

nano test_env.json

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

  • Ctrl+O — чтобы сохранить
  • Ctrl+X — для выхода

Самое приятное в nano — это подсказки внизу экрана, что нажать, чтобы выйти.

А вот с vim с этим сложнее. В него легко зайти:

vim test_env.json vi test_env.json (предшественник vim)

Войти вошли, а как выйти то, аааа? Тут начинается легкая паника, потому что ни одна из стандартных комбинаций не срабатывает:

Esc, ctrl + x, ctrl + q

… Если под рукой есть второй ноутбук или хотя бы телефон / планшет с интернетом, можно прогуглить «как выйти из vim», а если у вас только одно окно с терминалом, которое вы заблокировали редактором?

Делюсь секретом, для выхода надо набрать:

  • :q — закрыть редактор
  • :q! — закрыть редактор без сохранения (если что-то меняли, то просто «:q» не проканает)

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

«q» (quit)

.

Исходно, когда мы открываем файл через vim, то видим его содержимое, а внизу информацию о файле:

Когда нажимаем двоеточие, оно печатается внизу:

Если не печатается, не паникуем! Тогда попробуйте нажать Esc (вернуться в нормальный режим), потом Enter (подтвердить команду), а потом снова печатайте. Фух, помогло, мы вышли оттуда!!!

На самом деле сейчас всё не так страшно. Даже если вас заслали работать в банк, где нет доступа в интернет, а вы вошли в vi и не знаете как выйти, всегда можно погулить выход с телефона. Слава мобильному интернету! Ну а если вы знаете логин-пароль от сервера, то можно просто закрыть терминал и открыть его снова.

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

:w — сохранить файл; :q — закрыть редактор;

Ну а про возможности редактирования см статьи ниже =)

См также:
Как редактировать файлы в Ubuntu — подробнее о разных способах
Как пользоваться текстовым редактором vim — подробнее о vim и всех его опциях
Как выйти из редактора Vi или Vim? — зачем нажимать Esc

Как перенести / скопировать файл

Допустим, у нас в директории

/opt/app/log

находится

app.log

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

Скопировать файл

Команда:

cp что_копировать куда_копировать

Если мы находимся в директории

/opt/app/log

:

cp app.log /home/olga

В данном примере мы использовали относительный путь для «что копировать» — мы уже находимся рядом с логом, поэтому просто берем его. А для «куда копировать» используем абсолютный путь — копируем в

/home/olga

.

Можно сразу переименовать файл:

cp app.log /home/olga/app_test_2020_03_08.log

В этом случае мы взяли

app.log

и поместили его в папку

/home/olga

, переименовав при этом в

app_test_2020_03_08.log

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

Если в «куда копировать» файл с таким именем уже есть, система не будет ничего спрашивать, просто перезапишет его. Для примера положим в папку log внутри домашней директории файл «app.log», который там уже есть:

Никаких ошибок, система просто выполнила команду.

См также:
Копирование файлов в linux

Скопировать директорию

Команда остается та же, «cp», только используется ключ R — «копировать папку рекурсивно»:

cp -r путь_к_папке путь_к_новому_месту

Например:

cp /opt/app/log /home/olga

Так в директории /home/olga появится папка

«log»

.

Переместить файл

Если надо переместить файл, а не скопировать его, то вместо

cp (copy)

используем

mv (move)

.

cp app.log /home/olga ↓ mv app.log /home/olga

Можно использовать относительные и абсолютные пути:

mv /opt/app/logs/app.log /home/olga — абсолютные пути указаны, команда сработает из любого места

Можно сразу переименовать файл:

mv app.log /home/olga/app_2020_03_08.log — перенесли лог в /home/olga и переименовали


Переместить директорию

Аналогично перемещению файла, команда mv

mv /opt/app/log/ /home/olga/bakup/

Как удалить файл

С помощью команды

rm (remove)

:

rm test.txt — удалит файл test.txt

Если нужно удалить все файлы в текущей директории (скажем, вычищаем старые логи перед переустановкой приложения), используйте «*»:

rm * — удалит все файлы в текущей директории

Если нужно удалить папку, надо добавить флаг -r (recursive):

rm -r test_folder

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

А теперь представьте, что вы чистите много файлов. И на каждый система переспрашивает, и надо постоянно отвечать «да, да, да...» (y – enter, y – enter, y – enter)… Чтобы удалить все без вопросов, используйте флаг -f (force):

rm -rf test_folder --- просто все удалит без разговоров

Но учтите, что это довольно опасная команда! Вот так надоест подстверждать удаление и введешь «-rf», а директорию неправильно укажешь… Ну и все, прости-прощай нужные файлы. Аккуратнее с этой командой, особенно если у вас есть root-полномочия!

Опция -v показывает имена удаляемых файлов:

rm -rfv test_folder --- удалит папку со всем содержимым, но выведет имена удаляемых файлов

Тут вы хотя бы можете осознать, что натворили )))

См также:
Как удалить каталог Linux

Как изменить владельца файла

Если у вас есть root-доступ, то вы наверняка будете выполнять все действия под ним. Ну или многие… И тогда любой созданный файл, любая папка будут принадлежать root-пользователю.

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

Допустим, что я поднимаю сервис testbase. И он должен иметь доступ к директории user и файлу test.txt в другой директории. Так как никому другому эти файлики не нужны, а создала я их под рутом, то просто меняю владельца:

chown testbase:testbase test.txt — сменить владельца файла chown -R testbase:testbase user — сменить владельца папки

В итоге был владелец

root

, а стал

testbase

. То, что надо!

См также:
Команда chown Linux

Как установить приложение

Если вы привыкли к винде, то для вас установка приложения — это скачать некий setup файлик, запустить и до упора тыкать «далее-далее-далее». В линуксе все немного по-другому. Тут приложения ставятся как пакеты. И для каждой системы есть свой менеджер пакетов:

  • yum — red hat, centos
  • dpkg, apt — debian

См также:
5 Best Linux Package Managers for Linux Newbies

Давайте посмотрим на примере, как это работает. В командной строке очень удобно работать с Midnight Commander (mc) — это как FAR на windows. К сожалению, программа далеко не всегда есть в «чистом» дистрибутиве.

И вот вы подняли виртуалку на centos 7, хотите вызвать Midnight Commander, но облом-с.

mc

Ничего страшного, установите это приложение через yum:

yum install mc

Он там будет что-то делать, качать, а потом уточнит, согласны ли вы поставить программу с учетом ее размеров. Если да, печатаем «y»:

И система заканчивает установку.

Вот и все! Никаких тебе унылых «далее-далее-далее», сказал «установи», программа установилась! Теперь, если напечатать «mc» в командной строке, запустится Midnight Commander:

См также:
Как устанавливать программы для Linux
Yum, шпаргалка — всякие опции и плагины

Как запустить приложение

Некоторые приложения запускаются через скрипты. Например, чтобы запустить сервер приложения WildFly, нужно перейти в папку bin и запустить там

standalone.sh

. Файл с расширением .sh — это скрипт.

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

/opt/cdi/jboss/bin/standalone.sh — запустили скрипт standalone.sh

Это важно! Даже если вы находитесь в той папке, где и скрипт, он не будет найден, если просто указать название sh-скрипта. Надо написать так:

./standalone.sh — запустили скрипт, если мы в той же директории

Поиск идет только в каталогах, записанных в переменную PATH. Так что если скрипт используется часто, добавляйте путь туда и вызывайте просто по названию:

standalone.sh --- запустили скрипт standalone.sh, путь к которому прописан в PATH

См также:
Запуск скрипта sh в Linux

— подробнее о скриптах

Если же приложение запускается как сервис, то все еще проще:

service test start — запустить сервис под названием «test» service test stop — остановить сервис

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

chkconfig test on

Она добавит службу в автозапуск.

Как понять, где установлено приложение

Вот, например, для интеграции Jenkins и newman в Jenkins надо прописать полный путь к ньюману в параметре PATH. Но как это сделать, если newman ставился автоматически через команду install? И вы уже забыли, какой путь установки он вывел? Или вообще не вы ставили?

Чтобы узнать, куда приложение установилось, используйте whereis (без пробела):

whereis newman

Как создать архив

Стандартная утилита, которая будет работать даже на «голой» системе — tar. Правда, для ее использования надо запомнить флаги. Для создания архива стандартная комбинация

cvzf

:

tar -cvzf archive.tar.gz /home/test

В данном примере мы упаковали директорию /home/test, внутри которой было две картинки — 502.jpg и 504.jpg.

Для распаковки меняем флаг «c» на «x» и убираем «z»:

tar -xvf archive.tar.gz

Хотя система пишет, что распаковала «/home/test», на самом деле папка «test» появляется там, где мы сейчас находимся.

Давайте разберемся, что все эти флаги означают:

  • c — создать архив в linux
  • x — извлечь файлы из архива
  • v — показать подробную информацию о процессе работы (без него мы бы не увидели, какие файлики запаковались / распаковались)
  • f — файл для записи архива
  • z — сжатие

Для упаковки используется опция

c

C

reate, а для распаковки

x

— e

X

tract.

Если очень хочется использовать rar, то придется изгаляться. Через yum установка не прокатит:

yum install rar yum install unrar

Говорит, нет такого пакета:

No package rar available. Error: Nothing to do

Придется выполнить целую пачку команд! Сначала скачиваем, разархивируем и компилируем:

wget http://rarlabs.com/rar/rarlinux-x64-5.4.0.tar.gz tar xzf rarlinux-x64-5.4.0.tar.gz cd rar make install

Устанавливаем:

mkdir -p /usr/local/bin mkdir -p /usr/local/lib cp rar unrar /usr/local/bin cp rarfiles.lst /etc cp default.sfx /usr/local/lib

И применяем:

unrar x test.rar

См также:
Установка RAR на Linux

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

Вот, допустим, вы выполняли какие-то сложные действия. Или даже не вы, а разработчик или админ! У вас что-то сломалось, пришел коллега, вжух-вжух ручками, magic — работает. А что он делал? Интересно же!

Или, может, вы писали длинную команду, а теперь ее надо повторить. Снова набирать ручками? Неохота! Тем более что есть помощники:

↑ (стрелочка «наверх») — показать последнюю команду history — показать последние 1000 команд

Если надо «отмотать» недалеко, проще через стрелочку пролистать команды. Один раз нажали — система показала последнюю команду. Еще раз нажали — предпоследнюю. И так до 1000 раз (потому что именно столько хранится в истории).

Большой бонус в том, что линукс хранит историю даже при перезапуске консоли. Это вам не как в винде — скопировал текст, скопировал другой, а первый уже потерялся. А при перезагрузке системы вообще все потерялось.

Если тыкать в стрелочку не хочется, или команды была давно, можно напечатать «history» и внимательно изучить команды.

См также:
История команд Linux — больше о возможностях history

Как посмотреть свободное место

Сколько места свободно на дисках

df -h

Сколько весит директория

du -sh du -sh * --- с разбиением

Как узнать IP компьютера

Если у вас настроены DNS-имена, вы подключаетесь к linux-машине именно по ним. Ведь так проще запомнить — это testbase, это bugred… Но иногда нужен именно IP. Например, если подключение по DNS работает только внутри рабочей сети, а коллега хочет подключиться из дома, вот и уточняет айпишник.

Чтобы узнать IP машины, используйте команду:

hostname -I

Также можно использовать

ifconfig

:

ifconfig — выведет кучу инфы, в том числе ваш внешний IP ip a — аналог, просто иногда Ifconfig дает очень много результата, тут поменьше будет

См также:
Displaying private IP addresses

Как узнать версию OS

Сидите вы у Заказчика на линуксовой машине. Пытаетесь что-то установить — не работает. Лезете гуглить, а способы установки разные для разных операционных систем. Но как понять, какая установлена на данной машине?

Используйте команду:

cat /etc/*-release

На этой виртуалке стоит CentOs 7.

Если нужна версия ядра:

uname -a

См также:
Как узнать версию Linux

Как узнать, как работает команда

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

man ls

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

Команда удобна тем, что не надо даже уходить из командной строки, сразу получаешь всю информацию. К тому же это всегда актуальная информация. А что вы там нагуглите — неизвестно =))

Хотя лично мне проще какую-то команду прогуглить, ведь так я получу русское описание + сначала самые главные флаги (а их может быть много). Но я сама новичок в линуксе, это подход новичка. А лучше сразу учиться прокачивать навык поиска по man-у. Он вам очень пригодится для более сложных задач!

Если man у программы нет, используйте флаг -h (--help):

ls -h

Как создать много тестовых папок и файлов

Допустим, у нас есть некая папка test. Создадим в ней сотню директорий и кучу файликов в каждой:

mkdir -p test/dir--{000..100} touch test/dir--{000..100}/file-{A..Z}

Вот и все, дальше можно играться с ними!

Теперь пояснения:

  • mkdir — создать директорию
  • touch — создать файл (или изменить существующий, но если файла с таким именем нет, то команда создаст новый, пустой)

А выражения в скобках играют роль функции, которая выполняется в цикле и делает ручную работу за вас:

  • {000..100} — пробежится по всем числам от 0 до 100
  • {A..Z} — пробежится по всем буквам английского алфавита от A до Z

Как я пробовала эту команду. Сначала посмотрела, где нахожусь:

$ pwd /home/test

Символ $ при описании команд означает начало строки, куда мы пишем команду. Так мы отделяем то, что ввели сами (pwd) от ответа системы (/home/test).

Ага, в домашней директории. Создам себе песочницу:

mkdir olga

Вот в ней и буду творить!

mkdir -p olga/dir--{000..100} touch olga/dir--{000..100}/file-{A..Z}

А потом можно проверить, что получилось:

cd olga ls -l

Как-то так! Имхо, полезные команды.

Я нашла их в книге «Командная строка Linux. Полное руководство», они используются для того, чтобы создать песочницу для прощупывания команды find. Я, как и автор, восхищаюсь мощью командной строки в данном случае. Всего 2 строчки, а сколько боли бы принесло сделать похожую структуру через графический интерфейс!

И, главное, тестировщику полезно — может пригодиться для тестов.

Как протестировать IOPS на Linux

Это очень полезно делать, если машину вам дает заказчик. Там точно SSD-диски? И они дают хороший iops? Если вы разрабатываете серверное приложение, и от вас требуют выдерживать нагрузку, нужно быть уверенными в том, что диски вам выдали по ТЗ.

Наше приложение активно использует диск. Поэтому, если заказчик хочет видеть хорошие результаты по нагрузке, мы хотим видеть хорошие результаты по производительности самих дисков.

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

Я расскажу о том, как мы тестировали диски. Как проверили, сколько IOPS они выдают.

Используем утилиту fio — https://github.com/axboe/fio/releases.

1) Скачиваем последнюю версию, распаковываем, переходим в каталог. В командах ниже нужно заменить «fio-3.19» на актуальную версию из списка

cd /tmp wget https://github.com/axboe/fio/archive/fio-3.19.tar.gz tar xvzf fio-3.19.tar.gz rm fio-3.19.tar.gz cd fio-fio-3.19

2) Должны стоять пакеты для сборки

apt-get install -y gcc make libaio-dev | yum install -y make gcc libaio-devel

3) Собираем

make

4) Тестируем

./fio -readonly -name iops -rw=randread -bs=512 -runtime=20 -iodepth 32 -filename /dev/sda -ioengine libaio -direct=1

Какие должны быть результаты:

  • Средний SSD, выпущенный 2-3 года назад — 50 тысяч IOPS.
  • Свежий Samsung 960 Pro, который стоит на одной из железок у нас в офисе — 350 тысяч IOPS.

Свежесть определяется на момент написания статьи в 2017 году.

Если должно быть 50 тысяч, а диск выдает сильно меньше, то:

— он не SSD;
— есть сетевые задержки;
— неправильно примонтирован;
— с ними что-то еще плохое случилось и стоит поднять алярм.

И это все?

Разумеется, нет =))

Еще полезно изучить команду find и регулярные выражения. Тестировщику как минимум надо уметь «грепать логи» — использовать grep. Но это уже остается на самостоятельный гуглеж.
База, которая всегда нужна — pwd, cp, mv, mkdir, touch. Остальное можно легко гуглить, как только возникает необходимость.

Вот вам еще пара ссылочек от меня:

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

Структура папок ОС Linux. Какая папка для чего нужна. Что и где лежит в линуксе

»

Книги и видео по теме

Видео:


ПО GNU/Linux — видео лекции Георгия Курячего

— очень хорошие видео-лекции

Книги:
Командная строка Linux. Уильям Шоттс
Скотт Граннеман. Linux. карманный справочник

Где тренироваться

Можно поднять виртуалку. Правда, тут сначала придется разбираться, как поднимать виртуалку )))

А можно купить облачную машину. Когда мне надо было поиграться с линуксом, я пошла на SimpleCloud (он мне в гугле одним из первых выпал и у него дружелюбный интерфейс. Но можно выбрать любой аналог) и купила самую дешманскую машину — за 150 руб в месяц. Месяца вам за глаза, чтобы «пощупать-потыркать», и этой машины с минимумом памяти тоже.

У меня был когда-то план самой платить эти 150р за то, чтобы дать машину в общий доступ. Но увы. Как я не пыталась ее огородить (закрывала команды типа ssh, ping и прочая), у меня не получилось. Всегда есть люди, которых хлебом не корми, дай испортить чужое. Выложил в общий доступ пароли? На тебе ддос-атаку с твоего сервера. Ну и сервер блокируют. После N-ой блокировки я плюнула на это дело. Кто хочет научиться, найдет 150р.

Чтобы подключиться к машине, используйте инструменты:

  • Putty — командная строка
  • WinSCP — графический интерфейс

См также:

WinSCP — что это и как использовать

Как добавить «Открыть как Администратор» в Ubuntu

В этом простом руководстве показано, как добавить опцию «Открыть как Администратор» в контекстное меню менеджера файлов в Ubuntu.

Вы спросите – а для чего это мне нужно? Иногда, вам нужно открыть или отредактировать файлы с правами администратора (root) прямо из файлового менеджера на рабочем столе Ubuntu, но все не так просто, нужно сначала открыть терминал, ввести соответствующую команду, а уже далее редактировать файлы.

Но все намного проще когда есть расширение nautilus-admin, которое поможет сделать работу за вас.

Для начала, давайте посмотрим как выглядит контекстное меню в nautilus до установки расширения

Как установить nautilus-admin в Ubuntu

1. Откройте терминал, нажав Ctrl+Alt+T на клавиатуре, или выполните поиск «терминал» в меню приложений.

2. Введите команду для установки расширения:

sudo apt install nautilus-admin

Вы можете заменить nautilus-admin на caja-admin или, peony-admin если вы работаете с рабочим столом MATE или UKUI.

После установки выполните команду

nautilus -q

Или выйдите из системы, а затем снова войдите, чтобы применить изменения.

Обратите внимание, что расширение добавляет только права администратора для открытия папок или редактирования файлов. У вас не будет опции «Запуск от имени администратора» для запуска программ с привилегиями суперпользователя. Но все же, это облегчит использование операционной системы Ubuntu.

В оригинальной версии операционной системы Ubuntu по умолчанию не реализована такая простая и нужная вещь простые вещи как эта. Но тем и хорош мир Linux что не связывает по рукам. Например, в операционной системе Ubuntu*Pack, которая основана на ванильном Ubuntu эта функция, а также много других необходимы, нужных и интересных вещей уже реализовано «из коробки».

Возможно Ubuntu не включает это из-за того, что огромное количество новичков пользуется их системой, и чтобы они случайно ее не сломали? А как вы думаете?

Если статья была полезной, не забудьте поделиться ею в социальных сетях. Всем хорошего дня.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

14712-23cookie-checkКак добавить «Открыть как Администратор» в Ubuntuno

Похожее

Автор публикации

не в сети 4 месяца

FOX

Люблю что-то новое

Комментарии: 74Публикации: 127Регистрация: 24-09-2017

Работа с Git через консоль — Блог HTML Academy

Другие материалы по Git

Задача: форкнуть репозиторий в GitHub, создать ветку и работать с кодом.

Терминальная корова просит сделать форк и создать ветку

Сразу появляется много вопросов — что такое GitHub, какие для этого нужны команды, зачем, а главное, как всем этим пользоваться? Давайте разберёмся.


Когда мы пишем код, мы постоянно туда что-то добавляем, удаляем, и иногда всё может ломаться. Поэтому перед любыми изменениями стоит сделать копию проекта. Если собирать проекты в папки с именами проект1, проект1_финали проект2_доделка, вы быстро запутаетесь и точно что-нибудь потеряете. Поэтому для работы с кодом используют системы контроля версий.

Система контроля версий — программа, которая хранит разные версии одного документа, позволяет переключаться между ними, вносить и отслеживать изменения. Таких систем много и все они работают по принципу компьютерной игры, где вы можете вернуться к месту сохранения, если что-то пошло не так.

Git — самая популярная система контроля версий. С Git можно работать через командную строку (или терминал). В каждой системе своя встроенная программа для работы с командной строкой. В Windows это PowerShell или cmd, а в Linux или macOS — Terminal.

Вместо встроенных программ можно использовать любую другую — например, Git Bash в Windows или iTerm2 для macOS.

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

Но давайте по порядку — установим Git на компьютер.

Устанавливаем и настраиваем Git

Windows. Скачайте Git для Windows, запустите exe-файл, следуйте инструкциям.

macOS. Скачайте Git для macOS и запустите dmg-файл. Если он не запускается, зайдите в Системные настройки — Безопасность и нажмите кнопку Open anyway (Всё равно открыть).

Linux. Установите Git через встроенный менеджер пакетов. Если у вас Ubuntu, используйте команду sudo apt-get install git. Команды для других дистрибутивов можно посмотреть здесь.

Как проверить, что Git установился

Откройте терминал и введите команду

Если Git установлен, то вы увидите номер версии, например, 2.35.1.

Настраиваем Git

Теперь нужно ввести имя и адрес электронной почты, чтобы ваши действия в Git были подписаны, а ещё для привязки к GitHub.

Добавить имя (введите его внутри кавычек):

git config --global user.name "ваше имя"

Добавить электронную почту (замените [email protected] на вашу почту):

git config --global user.email [email protected]

Опция --global значит, что имя и почта будут использоваться для всех ваших действий в Git. Если вы хотите менять эту информацию для разных проектов, то вводите эти же команды, только без опции --global.

Регистрируемся на GitHub

GitHub (или Гитхаб) — веб-сервис на основе Git, который помогает совместно разрабатывать IT-проекты. На Гитхабе разработчики публикуют свой и редактируют чужой код, комментируют проекты и следят за новостями других пользователей.

Профиль на Гитхабе и все проекты в нём — ваше публичное портфолио разработчика, поэтому нужно завести профиль, если у вас его ещё нет.

  1. Зайдите на сайт https://github.com и нажмите кнопку Sign up.
  2. Введите имя пользователя (понадобится в дальнейшей работе), адрес электронной почты (такой же, как при настройке Git) и пароль.
  3. На почту придёт код активации — введите на сайте.
  4. Появится окно с выбором тарифного плана. Если вы пользуетесь Гитхабом для учёбы, то укажите, что профиль нужен только для вас и вы студент.
  5. Опросы и выбор интересов можно пропустить.

На этом всё — вы зарегистрировались и у вас есть собственный профиль.

Устанавливаем SSH-ключи

Чтобы получить доступ к проектам на GitHub со своего компьютера и выполнять команды без постоянного ввода пароля, нужно, чтобы сервер вас узнавал. Для этого используются SSH-ключи.

SSH — протокол для безопасного соединения между компьютерами.

SSH-ключ состоит из двух частей — открытого и закрытого ключа. Открытый ключ мы отправляем на сервер. Его можно не прятать от всех и не переживать, что кто-то его украдёт, потому что без закрытого ключа он бесполезен. А вот закрытый ключ — секретная часть, доступ к нему должен быть только у вас. Это важно.

Мы будем подключаться к GitHub по SSH. Это работает так:

  1. Вы отправляете какую-то информацию на GitHub, который знает ваш открытый ключ.
  2. GitHub по открытому ключу понимает, что вы это вы, и отправляет что-то в ответ.
  3. Только вы можете расшифровать этот ответ, потому что только у вас есть подходящий закрытый ключ.

А чтобы подключиться к GitHub с помощью SSH-ключа, сначала нужно его создать.

Проверяем, есть ли у нас SSH-ключи

Перед созданием нового SSH-ключа проверим, есть ли на компьютере другие ключи. Обычно они лежат в папке с названием .ssh — поэтому посмотрим, есть ли в ней что-то, с помощью команды в терминале:

Если у вас уже есть SSH-ключ, то в списке будут файлы с именами вроде id_rsa.pub, id_ecdsa.pub или id_ed25519.pub. А если терминал ругается, что директории ~/.ssh не существует, значит, у вас нет SSH-ключей. Давайте это исправим.

Создаём новый SSH-ключ

Откройте терминал и скопируйте туда эту команду. Не забудьте подставить в кавычки почту, на которую вы регистрировались на Гитхабе.

ssh-keygen -t ed25519 -C "[email protected]"

ed25519 — это алгоритм для генерации ключей. Если ваша система не поддерживает алгоритм ed25519 (и вы увидели ошибку), используйте немного другую команду с алгоритмом rsa:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Терминал спросит, куда сохранить ключ. Если не хотите менять имя файла, которое предлагает терминал, просто нажмите Enter.

> Generating public/private имя-ключа key pair.
 > Enter a file in which to save the key (/c/Users/ваш-профиль/.ssh/id_имя-ключа):*[Press enter]*

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

В результате создаётся новый SSH-ключ, привязанный к вашей электронной почте.

Создание ключа по шагам:

ssh-explained.png

Добавляем SSH-ключ в ssh-agent

ssh-agent — программа для хранения и управления SSH-ключами. Давайте запустим её и добавим туда наш SSH-ключ. Запускаем командой eval "$(ssh-agent -s)":

Если в ответ терминал покажет надпись «Agent pid» и число — значит, всё ок, агент запущен.

Теперь добавим наш ключ командой.

ssh-add ~/.ssh/id_ed25519

Если у вашего ключа другое имя, замените название id_ed25519 именем файла с ключом (это правило применяется и дальше в инструкции). Если вы устанавливали пароль на ключ, введите его два раза после ввода команды ssh-add (терминал подскажет, когда это сделать).

Теперь, если всё хорошо, появится надпись Identity added — значит, можно переходить к добавлению ключа на GitHub.

Копируем SSH-ключ для GitHub

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

clip < ~/.ssh/id_ed25519.pub

Команда clip может не сработать на вашем компьютере, тогда есть два способа узнать ключ — простой и сложный.

Сложный способ. Найдите скрытую папку .ssh, откройте файл id_ed25519.pub в текстовом редакторе и скопируйте его содержимое.

Простой способ. Введите команду ниже и ключ появится прямо в терминале — его нужно вручную скопировать в буфер обмена. Ключ начинается с ssh-ed22519 или ssh-rsa (или похожей строки) — поэтому копируйте строку прямо с самого начала.

➜ ~ cat ~/.ssh/id_ed25519.pub
 
 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO63MT6VCFuZtCLhLj1J6I7dgEU2BsRdIsnvnr4ax+Fr [email protected]

Не копируйте этот ключ из статьи — он уже не работает.

Добавляем SSH-ключ на GitHub

Это нужно сделать, чтобы GitHub вас узнавал.

Перейдите на страницу для работы с ключами в вашем профиле на GitHub и нажмите кнопку New SSH key.

github_addnew.png

В поле Title нужно добавить название нового ключа. Например, если вы используете Mac, вы можете назвать ключ MacBook Air, или, если ключ для курсов Академии, то Academy. А ключ, который вы скопировали на прошлом шаге, вставьте в поле Key.

ssh-add-github.png

Не копируйте ключ со скриншота — он уже не работает.

Теперь нажмите кнопку Add SSH key и, если потребуется, введите свой пароль от GitHub, чтобы подтвердить сохранение. Если всё сделано верно, новый ключ появится в списке на странице https://github.com/settings/keys.

github-added-key.png

Теперь мы можем поработать с проектом в репозитории.

Что такое репозиторий

Репозиторий — папка с файлами вашего проекта на сервере GitHub. Так вы можете работать с проектом откуда угодно, не переживая, что какие-то файлы потеряются — все данные останутся в репозитории.

Если над проектом работает несколько программистов, сначала создаётся мастер-репозиторий — это общий репозиторий с рабочей версией проекта. А каждый программист работает с форком — то есть полной копией мастер-репозитория. В форке вы можете безнаказанно менять код и не бояться что-то сломать в основной версии проекта.

Делаем форк мастер-репозитория

Заходим в нужный репозиторий и нажимаем на «вилку» с надписью fork.

fork.png

Появится окно Create a new fork — проверьте, что он называется так, как вам нужно, и жмите кнопку Create fork. Через пару секунд всё готово.

fork-details.png

Клонируем форк на компьютер — git clone

Клонировать форк — значит скачать его, чтобы работать с кодом на своём компьютере. Тут нам и пригодится SSH.

Открываем терминал и переходим в папку с будущим проектом — для этого используем команду cd your-project. Если вы хотите, чтобы проект лежал в папке device, введите

Если такой папки на компьютере нет, то сначала введите md your-project, чтобы создать эту папку, а затем cd your-project. Подробнее о командах.

Когда перейдёте в папку, введите команду git clone для клонирования репозитория:

git clone [email protected]:your-nickname/your-project.git

Замените your-nickname на ваше имя пользователя на GitHub, а your-project — на название проекта. Проще всего их найти прямо наверху страницы репозитория.

Если вы правильно настроили SSH-ключи, Git скопирует репозиторий на ваш компьютер.

➜ device git clone [email protected]:academy-student/1173761-device-34.git
 Клонирование в «1173761-device-34»…
 remote: Enumerating objects: 15, done.
 remote: Counting objects: 100% (15/15), done.
 remote: Compressing objects: 100% (14/14), done.
 remote: Total 15 (delta 0), reused 15 (delta 0), pack-reused 0
 Получение объектов: 100% (15/15), 145.07 КиБ | 900.00 КиБ/с, готово.

Если вы видите ошибку Error: Permission denied (publickey), скорее всего, вы ошиблись в настройке SSH-ключа. Вернитесь в этот раздел инструкции и повторите процесс настройки.

Кстати, если вы хотите, чтобы название папки с проектом у вас на компьютере отличалось от имени репозитория, можете дополнить команду клонирования, добавив в конце другое название:

git clone [email protected]:_your-nickname_/_your-project_.git folder_name

Теперь на вашем компьютере в папке your_project или в той, название которой вы указали, находится полная копия репозитория c GitHub.

В каждом репозитории есть как минимум одна основная ветка, которую создаёт сам Git — она называется master. Обычно в ней хранят проверенную версию программы без ошибок.

А если вы хотите исправить ошибку в коде или добавить что-то в проект, но не хотите сломать код в основной ветке, нужно создать новую ветку из master и работать из неё. Каждая ветка — что-то вроде второстепенной дороги, которая затем снова соединится с основной.

Создаём новую ветку — git branch

Откройте терминал и введите команду 

Она показывает список веток, с которыми мы работаем в проекте, и выделяет текущую. Если мы находимся в master , то создаём новую ветку командой

git checkout -b имя-новой-ветки.
➜ 1173761-device-34 git:(master) git checkout -b task1
 Переключено на новую ветку «task1»
 ➜ 1173761-device-34 git:(task1)

Если текущая ветка не master, переключитесь на неё с помощью команды checkout. После git checkout надо указать название нужной ветки.  

Мы делаем это, чтобы новая ветка содержала свежую рабочую версию проекта. Если вы ошиблись в названии, например, допустили опечатку, вы можете изменить название ветки с помощью команды: 

git branch -m старое-имя-ветки новое-имя-ветки.

Сохраняем изменения — git add

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

Если вы хотите сохранить изменения не во всех файлах, для начала введите команду git status. Она покажет текущее состояние в вашей ветке, а именно список с названиями изменённых файлов, если они есть, и укажет на те, которые ожидают записи и сохранения (обычно они выделены красным цветом).

git-status.png

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

Чтобы сохранить изменения только отдельных файлов, укажите их имена вручную. Например, если вы изменили файл index.html, введите

Если название очень длинное, вы начните его писать, нажмите Tab и терминал сам предложит продолжение пути к файлу.

Делаем коммит — git commit

Сделать коммит — значит зафиксировать все сохранённые изменения и дать им название. Это делается с помощью команды commit

git commit -m "ваше сообщение"

Текст сообщения должен быть лаконичным и вместе с этим сообщать о том, что делает коммит (внесённые изменения). Например,

  • Добавляет имя наставника в Readme
  • Вводит функцию сортировки изображений
  • Правит ошибку в поиске городов на карте

git-commit.png

Отправляем изменения на GitHub — git push

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

git push origin название-текущей-ветки

Где origin означает репозиторий на компьютере, то есть ваш форк. Слово origin — часть команды, не меняйте это название на своё.

git-push-origin.png

Создаём пулреквест

Пулреквест (или PR) — это предложение изменить код в репозитории. PR должен проверить администратор мастер-репозитория — это может быть коллега-разработчик, техлид или наставник на курсе.

Если к коду нет вопросов, пулреквест принимается. Если нужно что-то исправить — отклоняется, и придётся исправить код и снова пройти цепочку git add — git commit — git push. Если вы и дальше работаете в той же ветке, а пулреквест ещё не принят, все ваши изменения автоматически добавятся в пулреквест, созданный из этой ветки после команды git push origin название-текущей-ветки.

Чтобы создать пулреквест, зайдите на страницу вашего форка на GitHub. Вверху появилась плашка Compare & pull request, а ещё можно зайти на вкладку Pull Requests.

pr-offer.png

Нажмите на неё и окажетесь на странице открытия пулреквеста. Проверьте описание и нажмите Create pull request.

pr-stage2.png

Готово, теперь ждём остаётся ждать одобрения пулреквеста или комментариев к нему.

Синхронизируем репозитории

Предположим, вы исправили код, руководитель или наставник одобрил ваши правки и принял пулреквест.

pr-closed.png

Теперь код в мастер-репозитории обновился, а в вашем форке нет, вы ведь не обновляли свою версию репозитория с тех пор, как клонировали её себе на компьютер. Приведём форк в актуальное состояние.

В локальном репозитории переключаемся на ветку master.

Забираем изменения из ветки master мастер-репозитория 

git pull [email protected]:academy-student/1173761-device-34.git master

Отправляем изменения уже из своей ветки master в ваш форк на GitHub с помощью команды 

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

Самое главное, что нужно запомнить

Система контроля версий — программа, которая хранит разные версии одного документа, позволяет переключаться между ними, вносить и отслеживать изменения.

Git — самая популярная система контроля версий. С Git можно работать через терминал.

Как работает терминал: мы вводим команду и получаем ответ компьютера — или всё получилось, или где-то ошибка, или нужно ввести что-то ещё.

GitHub (или Гитхаб) — веб-сервис, основанный на Git, который помогает совместно разрабатывать IT-проекты. На Гитхабе разработчики публикуют свой и редактируют чужой код, комментируют проекты и следят за новостями других пользователей.

SSH-ключ нужен, чтобы получить доступ к проектам на GitHub со своего компьютера и выполнять команды без постоянного ввода пароля, нужно, чтобы сервер нас узнавал.

ssh-agent — программа для хранения и управления SSH-ключами.

Репозиторий — папка с файлами вашего проекта на сервере GitHub или у вас на компьютере.

Мастер-репозиторий это общий для всей команды репозиторий с рабочей версией проекта.

Форк — полная копия мастер-репозитория, в которой вы можете безопасно работать.

Клонировать форк — скачать его командой git clone, чтобы работать с кодом на своём компьютере.

Пулреквест (или PR) — предложение изменить код в репозитории. PR должен проверить администратор мастер-репозитория — это может быть коллега-разработчик, техлид или наставник на курсе.

Без Гита и жизнь не та

Работа в терминале — базовый навык веб-разработчика. Научитесь всему остальному на профессии «Фронтенд-разработчик»

Хочу

Нажатие на кнопку — согласие на обработку персональных данных

Gedit — текстовый редактор для системных файлов в ОС Linux

Обычно продвинутые пользователи ОС Linux используют для редактирования конфигурационных файлов своей системы такие инструменты терминала, как Vim и nano. Новички же могут использовать для этих целей текстовый редактор Gedit, который имеет графический пользовательский интерфейс. С ним легко и просто редактировать любой, даже системный файл.

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

Gedit является текстовым редактором по умолчанию для оболочки Рабочего стола GNOME. А она поставляется с дистрибутивами таких популярных операционных систем, как: Ubuntu, Debian, Fedora и др.

Работа с самим редактором не требует специфических, в отличие от Vim, знаний и достаточно проста. Запустить его можно, как с Терминала, так и с Меню приложений.

Gedit

В Терминале напишите:

gedit

и нажмите клавишу ввода на клавиатуре. Другой способ — найдите редактор в Меню приложений и запустите его. Откроется не перегруженное окно нового файла с пустым содержимым. После этого можете сразу приступать к набору текста.

Запуск Gedit в Терминале

Чтобы открыть уже существующий файл-исходник, нажмите «Открыть» на Панели инструментов или нажмите сочетание клавиш Ctrl+O. В меню будут перечислены последние объекты, с которыми вы работали.

Также внизу будет доступна кнопка «Другие документы», клик по которой перенаправит пользователя в окно Проводника. Выделите нужный объект и нажмите кнопку «Открыть».

Открыть другие документы

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

Подсветка синтаксиса языка

Как только вы начнете вносить свои изменения, имя файла-исходника станет помечено символов звездочки. Она не исчезнет до того момента, пока пользователь не сохранит результат. Сделать это можно с помощью кнопки «Сохранить» или быстрым сочетанием клавиш Ctrl+S. Вам будет предоставлен стандартный диалог сохранения с возможностью выбора каталога, имени файла и его расширения.

Вносить изменения в системные файлы сможете с задействованием команды sudo. Она предоставляет права, достаточные для решения поставленной задачи от имени суперпользователя. Наглядно в Терминале будет выглядеть так:

sudo gedit /etc/samba/smb.conf

и в результате откроет «smb.conf» (в качестве примера).

Открытие конфигурационного файла

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

Совет: всегда копируйте тот файл конфигурации, в который собираетесь вносить изменения. Редактирование копии всегда лучше только потому, что сохраняется шанс заменить её оригиналом.

Текстовый редактор Gedit не перегружает вас множеством лишних опций. При этом обладает достаточными возможностями для выполнения поставленных задач. На досуге загляните в его меню «Параметры». Спасибо за внимание!

Мой терминал не может перенаправлять приложение в текстовый редактор

Я использую ubuntu 20.04.
сегодня я заново установил его, а затем попытался выполнить эту команду через терминал
sudo nano /etc/fstab 
когда я его выполняю, он открывает текстовый файл, который должен был быть открыт для редактирования приложения текстового редактора... но на самом деле он открывает текстовый файл в терминале.
Теперь я хочу открыть текстовый файл через текстовый редактор. Так что же мне делать! система

описание

выполняется в соответствии с вашими требованиями. открыть файл в

решение

, это небольшой редактор, который может быть запущен в терминале. Он также будет запущен в текстовой консоли, которая очень полезна при разрушении графической среды.
команда Ubuntu для графического редактора - nano. Однако вы не можете изменить gedit только по команде. запускать графический редактор с расширенными правами, т.е. В некоторых случаях выполнение графических программ с расширенными правами (как пользователь root) может повлиять на права доступа к файлам в вашем доме и вызвать проблемы. Кроме того, по соображениям безопасности не рекомендуется запускать графические приложения в качестве пользователя root и поэтому не рекомендуется использовать их. поэтому не используйте команду nano для запуска графических приложений. используется только для команд терминала sudo.
текущий поддерживаемый графический редактор редактировает системные файлы, используя URI sudo. Таким образом, откройте Системный файл admin://, используя права root для его безопасного редактирования:
gedit admin:///etc/fstab 
при этом появится графический диалог, в котором вы должны указать пароль пользователя. в первый раз в сеансе вас будут допрашивать дважды подряд.
с помощью этого механизма вы можете редактировать временные копии системных файлов как обычные пользователи. После нажатия на кнопку сохранить файл системы будет обновлен.
обратитесь к некоторым ссылкам на alternative methods для редактирования файлов с помощью редактора GUI.

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

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

Справка


человек - отобразить справочную страницу для команды «программа»

информация - как и man, отображать страницу справки для команды «программа».

Если он не может найти информационную страницу, он ищет справочную страницу и отображает ее.

  • информационная программа, программа pinfo

--помощь - у каждой программы есть опция --help или -h для отображения небольшой справки

Логин


выход из системы - команда выхода из терминала

выезд - команда для завершения процесса оболочки: tcsh, bash и т. д.Д - (Ctrl-D) отправляет на терминал сообщение EOF (конец файла)

Указывает на конец ввода данных. В оболочке «bash» это обычно приводит к отключению терминала

.

кто - отображает имя пользователя

идентификатор - отображает текущее имя и группу пользователя и их номера (UID и GID)

и - команда для повторного входа в качестве другого пользователя (su, для «переключить пользователя»)

Позволяет в том же терминале временно изменить права на выполнение команд другому пользователю (изменить текущий UID и GID)

  • su имя пользователя — изменить пользователя на пользователя с именем «имя пользователя»
  • su - имя пользователя - изменить пользователя, очистить переменные среды и установить новые значения для HOME, SHELL, USER, LOGNAME, PATH

палец - список всех пользователей, которые в настоящее время вошли в систему на машине (и их терминалы)
  • палец
  • finger @komputer — пользователи вошли в систему на компьютере с именем «computer;
  • имя пользователя finger - выводит информацию о пользователе 'username' и всех терминалах, на которых он зарегистрирован
  • finger Marek - выводит информацию обо всех пользователях с именем 'marek'

в - точно так же, как списки пальцев зарегистрированных пользователей и их активных терминалов

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


компакт-диск - изменяет текущий каталог (из «изменить каталог»)
  • cd имя каталога - изменить текущий каталог на «имя каталога»
  • cd dir1 / dir2 / dir3 - идет в каталог 'dir3', который находится в каталоге 'dir2', который находится в 'dir1'
  • cd - откуда угодно, меняет каталог на домашний
  • продолжение. - Перемещается в каталог на один выше в дереве каталогов, чем текущий
  • cd /home/dir - откуда угодно, идет в директорию начиная с начала дерева: /
  • cd - - переход к предыдущему каталогу

pwd - распечатать путь к текущему каталогу (из «распечатать рабочий каталог»)

лс - перечисление каталога
  • ls - перечисляет каталог.(сл.)
  • ls файл1 файл2 файл3 - Список только перечисленных файлов
  • ls * .txt — список всех файлов с именами, заканчивающимися на «.txt»
  • ls catalog1 catalog2 - список перечисленных каталогов
  • ls -l — Подробный список
  • ls -a - также список скрытых файлов (т.е. тех, имя которых начинается с точки)
  • ls -R - рекурсивно перечисляет каталоги (т.е. также отображает содержимое подкаталогов)
  • ls -d - отображать только имена каталогов, как и обычные файлы, т.е. не отображать их содержимое

кот - записывает все переданные ему файлы в стандартный вывод
  • cat файл - если мы не перенаправим стандартный вывод в другой файл (>, >>) или программу (|), она выведет файл на экран
  • cat файл1 файл2 файл3 - распечатать содержимое всех файлов
  • один за другим

лотки - записывает все переданные ему файлы в стандартный вывод, но меняет порядок строк
  • tac file1 file2 - печатать оба файла вместе, с последней до первой строки

эхо - повторяет слова, указанные в аргументе, на стандартном выходе
  • echo costam write if echo "costam write" - написать "costam write" и закончить новой строкой
  • echo -n "costam print" - после записи аргументов не будет печатать новую строку
  • echo $HOME - выводит содержимое переменной среды HOME

туалет - подсчитывает строки, слова и символы в файле

, если аргумент не задан, считывается из стандартного ввода

.
  • cat файл1 файл2 | wc -l - будет считать все строки из объединенных файлов файл1 файл2
  • wc файл - печатать строки слов и символов и имя файла
  • wc -m - только символы (или --chars)
  • wc -l - только строки (или --lines)
  • wc -w - только слова (lib --words)

меньше - удобный и быстрый просмотр текстовых файлов
  • меньше файла - отображает содержимое файла и разрешает прокрутку страницы (q-вывод)

Файлы и каталоги


сенсорный - изменяет время доступа и модификации файла или, если файл не существует, создает его.

кп - копирует файл
  • cp file1 file2 - создаст ./file2 идентичный file1
  • cp file3 ../katalog/jakis/ — создаст файл ../katalog/jakis/plik3
  • cp pom.* Подкаталог / — будут скопированы все файлы, начинающиеся с 'pom.' в ./подкаталог/
  • cp file5 ~/directory/some/file - создать файл ~/directory/some/file

мв - перемещает файл (таким образом, также служит для переименования)
  • mv file1 file2 - переименует файл из./файл1 в файл2
  • mv file3 ../katalog/jakis/ — переместит файл в ../katalog/jakis/file3
  • mv file4 подкаталог / - переместит файл ./subdirectory/file4
  • mv file5 ~/directory/some/file - переместить и переименовать ~/directory/some/file

п.м. - удаляет файл
  • РМ файл -
  • rm -r каталог - удалить все в каталоге и всех его подкаталогах (--recursive)
  • rm -f файл - не просит удалить (--force)

мкдир - создает каталог
  • mkdir my_new_directory
  • mkdir/home/users/ja/my_new_dir

rmdir - удаляет пустой каталог

чмод - изменяет права доступа к файлам

группы пользователей: u - пользователь, g - группа, o - другие, a - все

права доступа: r - чтение, w - запись, x - выполнение

  • chmod o + r файл - предоставить другим разрешение на чтение файла
  • chmod a-x file - лишить всех права на выполнение файла
  • chmod g=rw file - установить права на чтение и запись для вашей группы
  • chmod -R go + w directory - установить разрешения для всех файлов в каталоге и его подкаталогах (--recursive)

найти - показывает, где последний файл с данным именем (или частью имени) был замечен на этом компьютере

найти отчет.текст - найти pdf

найти - просмотреть каталог для рассматриваемого файла
  • найти. -name report.txt
  • find/home/user-name "rap * xt"

Перенаправления


> - перенаправление вывода из программы в файл.

Стандартным выводом любой программы является экран (текстовая консоль), а стандартным вводом — клавиатура. Вы можете свободно перенаправлять эти входы и выходы.

  • echo "ala ma cat">file.txt - выход из программы echo запишет в файл file.txt
  • ls -l> list.dat - перечислить файлы в файл list.dat

>> - добавление выхода из программы в конец файла
  • эхо "у алы есть собака" >> файл.txt — добавит «у ала есть собака» в конец файла .txt
  • ls -l> list.dat - перечислить файлы в файл list.dat

| - перенаправление вывода одной программы на ввод другой
  • файл кота.txt | wc -l — cat выведет на вывод файл .txt, который мы перенаправим в программу, считающую строки.
  • лс -л | lpr - Программа печати lpr будет получать данные из списка файлов
  • .
  • файл кота.txt | подносы | grep "что-то" | head> cosie.txt — запись файла .txt в программу «tac», которая меняет порядок строк, результат этого перенаправляется в «grep», который будет печатать только строки, содержащие слово «что-то», вывод этого отправлено в программу «голова», которая будет публиковать только первые 10 строк вывода, которые мы перенаправили в файл cosie.txt.

>! - перенаправление в файл. Работает как >, но продолжается даже после того, как файл уже существует. Работает с "tcsh".
  • echo "у ала есть кот">file.txt - если файл.txt существует, эта команда может завершиться ошибкой.
  • эхо "а-ля кот">! file.txt - вам нужно будет использовать восклицательный знак>!
  • echo "аля есть кот"> | файл.txt — то же самое, только в «bash»

- перенаправить файл как стандартный ввод.
  • шахматы - если шахматная программа принимает ходы на стандартный ввод, мы можем записать эти ходы в файл и отдать программе таким образом
  • кошка движется.txt | шахматы - тоже самое можно сделать да

- вход в следующие строки.
  • шахматы E2-B4
    H5-A1
    C6-F5
    DO_KONCA
    - пройти т.н. документ на месте. Все следующие строки между метками 'TO_END' будут поданы на стандартный ввод программы 'chess'.
  • эхо "E2-B4
    H5-A1
    C6-F5" | шахматы
    - тоже самое можно сделать да
  • echo -e "E2-B4\nH5-A1\nC6-F5" | шахматы - тоже самое можно сделать да

2> - перенаправить стандартный вывод ошибок в файл.В дополнение к стандартному выводу и вводу каждая программа также имеет стандартный вывод ошибок. Мы также можем перенаправить их, например, в другое место, чем обычный выход. Работает в «bash», а не в «tcsh».
  • find -name "file. *"> Found.log 2> errors.log - файлы, найденные с помощью 'find', попадут в found.log, сообщения об ошибках не будут скрывать результат и будут записаны в другой файл - ошибки.лог
  • cp -r data/backup/2> ошибка.log - если возникнут ошибки при копировании всего каталога, все сообщения будут записываться в error.log
  • (ls>file.log)>&file.err - в 'tcsh' нельзя перенаправить только вывод ошибок, отсюда и необходимость такой конструкции.

&> или> & - перенаправление обоих выходов в файл.
  • лс> & файл.log — стандартный вывод и стандартная ошибка для ошибок перенаправляются в файл.log
  • ls> logfile 2> & 1 — то же самое, но работает только в «bash». Перенаправьте вывод, затем скопируйте его в вывод ошибок.
  • ls &> log.file — то же, что и> &, но в более «bash»-обозначении.

человек ударить
  • Рекомендую для получения дополнительной информации

человек ткш
  • Рекомендую для получения дополнительной информации

Процессы


пс - перечислить процессы, запущенные на компьютере
  • ps - Отображает запущенные пользователем процессы
  • ps a - также отображать процессы других пользователей
  • ps -l, ps -f, ps -F - дополнительная информация о процессах (от: long, full, extra full)
  • ps f - отображает дерево зависимостей процесса (из: леса)
  • 90 024 пс --help -: P

бг - перезапускает приостановленную (Ctrl-Z) задачу, но в фоновом режиме, как если бы она была запущена с помощью &
  • bg - Запускает последнюю остановленную задачу
  • bg NUMBER - запускает задание с заданным номером в списке остановленных заданий (заданий)

фг - перезапускает остановленную (Ctrl-Z) задачу на переднем плане
  • fg - Запускает последнее остановленное задание
  • фг НОМЕР - запускает задание с заданным номером в списке остановленных заданий (
  • )

рабочих мест - отображает список остановленных заданий

убить - убивает данный процесс

PID - это номер идентификатора процесса, его можно прочитать, например.с помощью команды ps

  • kill PID - отправляет сигнал процессу с номером PID для прерывания процесса
  • kill -KILL PID - убить процесс без запроса

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

топ - интерактивный инструмент мониторинга процесса

Сортирует процессы по их текущему использованию ЦП, использованию памяти и т. д.

Редакторы


вим - расширенный текстовый редактор с текстовым режимом

Vi iMproved - новая версия известного редактора Vi. Он имеет

  • Подсветка синтаксиса для нескольких языков программирования
  • возможность редактирования нескольких файлов одновременно
  • богатая помощь
  • расширенные функции редакции
  • ...

гвим - vim в графическом режиме

емакс - расширенный текстовый редактор в графическом режиме

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


уемакс - текстовый редактор в текстовом режиме

Micro Emacs — это текстовая версия Emacs

.

Джо - простой текстовый редактор

Собственный редактор Джо.Подходит для написания простых документов


mcedit - текстовый редактор в текстовом режиме

mcedit — встроенный редактор для Midnight Commander.

Имеет, среди прочего подсветка синтаксиса.

Сеть


сосна - программа электронной почты

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


сш - программа для удаленного входа по зашифрованному соединению

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

  • ssh anatres - регистрирует меня на 'antares'a
  • ssh ja @ anatres — регистрирует меня как пользователя 'ja' на 'antares'a
  • ssh ja @ antares command — войдет в систему только для выполнения команды
  • на «antares»

SCP - программа для копирования файлов по зашифрованному SSH соединению

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

'scp' для подключения использует программу 'ssh'

  • scp файл ja@antares: ~/moje_fiki/ - скопирует файл в мою директорию на antaresie ~/moje_files/
  • scp ja@antares: /var/log/file. - скопирует данный файл из antares
  • в текущий каталог

логин - простой протокол удаленного входа в систему
  • rlogin antares - войдет в систему на 'antares'a

пинг - диагностическая программа, которая проверяет, есть ли сетевое подключение к данному компьютеру.
  • ping antares.astrouw.edu.pl - проверяем отвечает ли антарес (и как быстро)

диски
дф - перечисляет размеры и количество доступного места на смонтированных дисках (в килобайтах и ​​в процентах)
  • дф
  • df /dev/sda1 — ограничить результаты только одним разделом
  • df -h - размеры дисплея в удобных для пользователя единицах (удобочитаемых)
  • df -m - размеры в мегабайтах

дю - количество размеров каталогов и файлов, содержащихся в данном каталоге
  • дю - размер текущего каталога
  • дю каталог - считать размер данного каталога
  • du -s - писать только сумму, а не размеры каждого подкаталога
  • du -sm - укажите только сумму для каждого каталога и введите размер в мегабайтах
  • du -sm каталог * | sort -n - сортировать результаты от наименьшего к наибольшему из заданных каталогов

Окружающая среда


который - перечисляет, где находится программный файл с заданным именем
  • which ls — найти файл, который будет запущен после вызова команды «ls»

окр. - выводит текущие значения всех переменных окружения

или - устанавливает и перечисляет определения команд быстрого доступа («псевдонимы»), которые в настоящее время установлены в среде.
  • псевдоним - печатать псевдонимы
  • псевдоним ls 'ls --color = auto' - определяет новый псевдоним 'ls' с заданным содержимым

Системные устройства


/dev/ноль - бездонный колодец.Устройство, на которое мы можем писать по желанию, и все, что мы печатаем, теряется.
  • find -name "file.*" 2>/dev/null - если не хотите видеть среди результатов поиска сообщения об ошибках
  • latex file.tex> /dev/null - программа сделает все активности, но не будет захламлять консоль логами
  • count>/dev/null 2>/dev/null& — если мы хотим запустить программу в фоновом режиме, а затем выйти из системы (закрыть консоль), мы должны перенаправить вывод программы, чтобы она не пыталась записать на устройство, которое больше не существует.«Нулевое» устройство всегда есть.

/dev/ноль - нулевой магазин Это устройство для чтения, которое никогда не заканчивается. Из него можно прочитать любое количество байт, и все они будут нулевыми.
  • dd if=/dev/zero of=zeros.txt count=1000 - считывает тысячу нулей в файл 'zeros.txt'.
  • cat /dev/zero - советую не пробовать
  • head -c 10 /dev/zero > ноль.txt — вывести первые 10 байт из '/dev/zero' в файл 'zero.txt'. В результате получается файл с десятью нулями.

/разработчик/случайный - набор случайных чисел. Это считывающее устройство, которое дает вам действительно случайные данные. При этом используется системный бак энтропии, который пополняется благодаря различным проявлениям активности пользователя. Этот набор может закончиться, поэтому не читайте сразу несколько чисел.
  • from -t x1 -N 100 /dev/random - записать на экран первые 100 случайных байт из /dev/random (в шестнадцатеричной системе)

/dev/urandom - набор псевдослучайных чисел. Это считывающее устройство, которое сообщает псевдослучайные числа. В его распоряжении любое их количество.
  • from -t d1 -N 100 /dev/urandom - записать на экран первые 100 байт из /dev/urandom (в десятичной системе)

/dev/стандартный - стандартный ввод текущего процесса.Любой процесс, который попытается прочитать данные с этого устройства, получит содержимое собственного ввода.
  • эхо "есть кот" | cat ala.txt/dev/stdin — программа cat объединит содержимое файла ala.txt с тем, что она получила на стандартном вводе

/ dev / стандартный вывод - стандартный вывод текущей программы. Когда процесс что-то записывает в /dev/stdout, это появится в его стандартном выводе.
  • a2ps --output file.ps file.txt - программа a2ps создаст документ PostScript в файле file.ps
  • a2ps --output /dev/stdout file.txt - программа a2ps выведет документ на экран (его стандартный вывод)

/dev/stderr - стандартный вывод ошибок в текущей программе. Когда процесс что-то записывает в /dev/stderr, это отображается в его стандартном выводе ошибок.

.

ZG Polska Zentica - Как редактировать файлы конфигурации в Ubuntu

Файлы конфигурации содержат информацию, необходимую для управления работой программы. Пользователи Linux, особенно администраторы Linux, должны знать, как редактировать эти файлы и выполнять базовую настройку. Файлы конфигурации хранятся в подкаталогах /etc в виде текстовых файлов и могут редактироваться с помощью текстовых редакторов. Некоторые примеры файлов конфигурации: host.conf, hosts. разрешение.conf, network, syslog.conf и т. д. в операционных системах на базе Linux.

Чтобы внести какие-либо изменения в конфигурацию, необходимо открыть и отредактировать файл. В этой статье я опишу несколько способов редактирования файлов конфигурации в Ubuntu 18.04 LTS.

  • Использование Gedit
  • Использование редактора Nano
  • Использование редактора Vim
  • Использование редактора Gvim
  • Использование редактора Emacs

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

Использование Gedit

Gedit — это текстовый редактор по умолчанию для среды рабочего стола Gnome. Он поддерживает вкладки, поэтому вы можете открывать разные файлы на нескольких вкладках. Это более простой и удобный текстовый редактор по сравнению с другими доступными текстовыми редакторами.

Чтобы отредактировать файл конфигурации в текстовом редакторе, запустите Терминал, нажав Ctrl + Alt + T. комбинаций клавиш.Затем введите следующую команду от имени sudo:

$ sudo gedit /path/to/filename

Замените /path/to/filename фактическим путем к файлу конфигурации, который вы хотите отредактировать. При запросе пароля введите пароль sudo.

Пример: редактирование /etc/resolv.conf

Это похоже на редактор блокнота в операционной системе Windows. Как только откроется окно редактора, вы сможете начать запись или редактирование, не входя ни в какой режим.После редактирования нажмите Ctrl + S , чтобы сохранить файл.

Использование Nano Editor

Nano — это самый простой и мощный встроенный редактор во многих дистрибутивах Linux. Вам не нужно изучать редактор Nano перед его использованием, а также нет необходимости запоминать команды. Они отображаются внизу и вызываются клавишей Ctrl. Например, чтобы сохранить файл, нажмите Ctrl + O .

Чтобы отредактировать любой файл конфигурации, просто откройте окно терминала, нажав Ctrl + Alt + T. комбинаций клавиш. Перейдите в каталог, где находится файл. Затем введите nano , а затем имя файла, который вы хотите отредактировать.

$ sudo nano /path/to/filename

Замените /path/to/filename фактическим путем к файлу конфигурации, который вы хотите отредактировать. При запросе пароля введите пароль sudo.

Теперь вы можете редактировать и вносить изменения в файл конфигурации с помощью редактора Nano.

После редактирования нажмите Ctrl + O для сохранения и Ctrl + X для выхода из редактора.

Использование редактора Vim

Редактор Vim или Vi также предварительно установлен в большинстве дистрибутивов Linux. Нет видимых подсказок или элементов управления, что может быть немного сложнее для новичков. Однако, как только вы его изучите, это станет более быстрым и мощным инструментом редактирования. Используя Vim, вы можете редактировать и просматривать несколько файлов за один сеанс.

Чтобы открыть файл в редакторе Vim, откройте окно терминала, нажав Ctrl + Alt + T. комбинаций клавиш. Затем введите vi в качестве sudo, за которым следует имя файла вместе с путем к файлу, например:

$ sudo vi / path / to / filename

Замените /path/to/filename на фактическую конфигурацию пути к файлу, которую вы хотите редактировать. При запросе пароля введите пароль sudo.

Затем отредактируйте файл с помощью редактора Vim.Обратите внимание, что когда вы открываете редактор, вы входите в командный режим. Вот несколько шагов для редактирования файла в редакторе Vim:

  • Чтобы отредактировать файл, нажмите или на клавиатуре, чтобы войти в режим вставки, здесь вы можете редактировать как обычный редактор.
  • После редактирования выйдите из этого режима, нажав exit . Это вернет вас в обычный режим.
  • Для сохранения файла введите: w в командном режиме
  • Для выхода из редактора введите: q в командном режиме
  • сохранить одновременно и выйти.

Использование редактора Gvim

Gvim — это редактор Vim с графическим пользовательским интерфейсом. Чтобы установить Gvim, запустите Терминал, нажав Ctrl + Alt + T. . затем введите команду ниже в Терминале, чтобы начать установку.

 $ sudo apt-get install vim-gnome 

После завершения установки вы можете открыть и отредактировать в нем любой файл конфигурации. Введите команду ниже с помощью sudo в терминале, чтобы открыть любой файл конфигурации в Gvim:

$ sudo gvim /path/to/filename

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

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

Использование редактора Emacs

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

Чтобы установить утилиту Emac, запустите Терминал, нажав Ctrl + Alt + T. комбинаций клавиш. Введите команду ниже в терминале как sudo:

 $ apt-get install emacs 

После завершения установки вы можете открыть и отредактировать любой файл конфигурации в нем.

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

$ sudo emacs / путь / к / имя файла

Заменить / path/then/filename — это фактический путь к файлу конфигурации, который вы хотите отредактировать.При запросе пароля введите пароль sudo.

Отредактируйте файл как обычно и сохраните его с помощью панели инструментов.

Вы также можете открыть файл конфигурации в bash, а не в отдельном окне.

Введите следующую команду как sudo в Терминале:

Отредактируйте файл как обычный текстовый файл. Затем нажмите Ctrl + X и Ctrl + C, чтобы сохранить файл. Когда будет предложено сохранить файл, нажмите y, чтобы сохранить и выйти из редактора.

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

.

20 команд терминала UNIX — основные команды Linux, которые вам нужно знать

При обучении программированию часто решающим моментом является обучение работе с терминалом. Черное окно командной строки должно появиться во время вашего приключения в программировании, независимо от того, интересуетесь ли вы интерфейсом, сервером или тестированием (QA). Неважно, на каком языке вы программируете — этот момент рано или поздно наступит. Однако я гарантирую, что основные команды Linux не так уж страшны!

В блоге пока терминал пролистывает курс Python , нужна ли для поддержка Git .

Момент поступления терминала в процесс обучения может быть самым сложным, хотя работа самого терминала не вызывает затруднений. Просто нужно на время попрощаться с визуальным интерфейсом (GUI) в пользу черного, менее приятного окна 😉

Что такое командная строка/терминал?

Терминал

— это программа, которая открывает окно, позволяющее взаимодействовать с оболочкой , которая называется bash . Оболочка, в свою очередь, принимает команды с клавиатуры и передает их операционной системе для выполнения в виде инструкций.

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

Чтобы завершить этот рассказ, следует упомянуть, что UNIX как операционная система была создана в конце 1960-х годов Сегодня Linux и Mac произошли от UNIX.

Поэтому неудивительно, что пользователи Linux и программисты Mac обычно лучше знакомы с командной строкой.До недавнего времени у пользователей Windows был выбор командной строки CMD и Powershell. В настоящее время, начиная с версии Windows 10, они могут чувствовать себя пользователями Unix — достаточно выполнить поиск bash/ubuntu, установленных в системе 😉

Каждый раз, когда вы слышите фразу «открыть терминал, консоль или командную строку», вы поймете, что имеет в виду автор. Аналогичным образом, если объявление имеет дополнительное преимущество в виде знания Linux . Скорее всего, работодатель имеет в виду не установленную Ubuntu и использование только браузера, а команды — базовые команды Linux/Unix.

Наиболее важные команды UNIX

Я не думаю, что вам когда-нибудь придется полностью отказываться от GUI (визуального режима) для работы на компьютере, но знание консольных команд может значительно ускорить работу программиста (и не только программиста).

Открытый терминал

Начнем с запуска командной строки на компьютере

Терминал для Linux/MacOs
Найдите на своем компьютере приложение: терминал *.

* Mac : по умолчанию может использоваться высококонтрастный терминал на белой задней панели. Это не очень удобно, вы можете легко изменить эти настройки в левом верхнем углу:
Настройки -> Настройки -> Профили -> Выберите цветовой профиль и подтвердите, нажав «По умолчанию» внизу боковой панели
Другое вариант, который я использую на работе, и я настоятельно рекомендую скачать iTerm2.

* Linux : есть похожее приложение, которое я не использовал, но, как описано, оно работает аналогично iTerm2 — Guake.

iTerm и Guake - программы, делающие работу с терминалом намного приятнее, они позволяют много терминалов в одном окне (раздельный вид), быстрое перескакивание между проектами и т.д., но я не даю вам отказаться от терминала по умолчанию, т.к. достаточно для начала. Просто полезный лакомый кусочек 😉

Терминал для Windows 10
Если вы пользователь Windows 10 - найдите bash или ubuntu , если он не установлен по умолчанию, вы можете загрузить его из Microsoft Store, доступного на вашем компьютере как "Ubuntu".

После запуска Windows Bash/Ubuntu мы находимся в отдельной директории, где установлен наш специальный Linux. Команды в терминале в Windows 10 работают так же, как и в исходной системе UNIX, но если вы хотите иметь доступ к своим файлам, например, к рабочему столу или документам, перейдите на свой диск. У меня в компьютере два диска - C и D, поэтому я перейду на диск C: cd/mnt/c , а на диск D: cd/mnt/d . С помощью команды ls вы увидите все каталоги и файлы в корневом каталоге диска.

Терминал для Windows, отличной от 10
В более старых версиях Windows у вас может возникнуть соблазн установить виртуальную машину с Linux. Однако для наших основных нужд достаточно иметь доступ к любому онлайн-терминалу (правда, не все команды будут поддерживаться). Хорошим промежуточным решением было бы загрузить эмулятор терминала Windows, например, Cywin.

Если все готово, мы можем перейти к основным командам Linux!

Я буду использовать термин команда Linux, а не UNIX или UNIX (системы, производные от UNIX?), потому что я предполагаю, что этот пост будет нацелен в основном на пользователей всех дистрибутивов Linux и в меньшей степени на другие системы.Все время про команды терминала 😉

Команды файловой системы

Файловая система является постоянным местом хранения в UNIX. Каждый прямой путь к файлу выглядит одинаково:

/пользователь/каталог/подкаталог/файл.расширение

например

/rita/Desktop/Pictures/sea.png

Мы это понимаем интуитивно. На моем рабочем столе есть каталог изображений с sea.png.
Однако эта запись не случайна.Это связано с тем, что файловая система имеет иерархическую структуру , а началом всегда является корневой каталог с именем root и отмеченный символом: /.

1. pwd - показать путь к текущему каталогу

Команда pwd ( Print Working Directory ) выводит текущий путь к каталогу - папка, в которой мы находимся.

90 123 90 048 $ в день ~ / Рита /

Linux pwd: Always Lost ответит "где я?" каков мой путь?»

2. ls - вывести содержимое каталога

Одна из наиболее часто используемых команд Linux, ls ( List ) отображает все содержимое папки (файлы и папки), в которой мы находимся.

90 123 90 048 $ лс Рабочий стол Документы Загрузки Изображения Видео

Linux ls: одна из наиболее часто используемых команд — вы увидите больше в этом руководстве 😉

Обобщение шаблонов

В папке, содержащей множество файлов и подпапок, нам может быть сложно найти интересную информацию.Тогда пригодятся обобщающие шаблоны, например *,?, []

* - заменяет любую строку
? - означает любой один символ
[] - заменяет один символ, но из числа символов, указанных в скобках

Предположим, я зашел в папку «Изображения», где у меня хранится много изображений, сохраненных под разными именами, например, image01, image1, image2, img1, img2, img3, picture1, picture2 и т. д.

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

  $ лс изображение * img1 img2 img3  

Я также могу искать картинки, которые начинаются с двух букв и m и заканчиваются цифрами 1 :

  $ ls im * 1 изображение01 изображение1 изображение1  

или все, что заканчивается на 1 (т.е. они начинаются с любой последовательности символов и в конце появляются 1:

  $ лс * 1 изображение01 изображение1 изображение1 изображение1  

Мы также можем искать файлы, имя которых изображение и заканчивается любым символом:

  $ ls изображение? изображение1 изображение2  

То же самое получается указанием набора цифр в скобках - [12]:

  $ ls изображение [12] изображение1 изображение2  

Есть еще много обобщающих шаблонов, но для начала достаточно этих трех основных.

Скрытые файлы и каталоги

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

Имена скрытых файлов часто начинаются с точки. Если мы используем шаблон * то такой скрытый контент не появится, но используя ls.* мы можем искать скрытые файлы. Но что, если скрытая папка или файл имеют совсем другое имя? Тогда имеет смысл использовать команду ls с ключом например с опцией -a.

Команды:
ls -a
ls -la

Они также показывают скрытые файлы и каталоги.

3. cd - изменить каталог

Используя cd ( Change Directory ) меняем место/директорию где находимся.

Из каталога рита Хочу на рабочий стол:

90 123 $ cd Рабочий стол $ pwd ~ / Рита / Рабочий стол

компакт-диск Linux: навигация по каталогам

90 123 $ кд .. $ pwd ~ / Рита /

Используйте cd .. , чтобы вернуться в предыдущий каталог.

Кроме того, мы можем указать полный путь к папке, в которую мы хотим перейти. Нам даже не нужно запоминать полные имена. Все, что вам нужно сделать, это ввести первые 2-3 буквы имени и нажать клавишу Tab, и терминал сам подскажет, какие папки доступны в этом месте.

Например, у меня на рабочем столе есть подпапка From

  $ cd Рабочий стол/Форма $ pwd ~/rita/Рабочий стол/Форма $ кд .. $ pwd ~ / Рита / Рабочий стол  

4. человек - показать помощь

С помощью команды man ( manual ) мы покажем справку по данной команде и иногда пример использования.Например, man cd покажет описание - как использовать команду cd, какие у нее есть опции. Используйте q для выхода из режима чтения справки.

  $ человек лс LS (1) Пользовательские команды LS (1) ИМЯ ls - список содержимого каталога ОПИСАНИЕ Список информации о ФАЙЛАХ (текущий каталог по умолчанию). ...  

Linux man: показать полное описание использования команды (здесь усечено)

5. mkdir - Создать каталог

Время создать новую папку командой mkdir ( Make Directory ).

  $ mkdir новая_папка $ лс Рабочий стол Документы Загрузки new_folder Картинки Видео  

Linux mkdir: легко создать каталог Linux

6. rmdir - Удалить каталог

Удаляет выбранную папку командой rmdir ( Remove Directory ).

  $ rmdir новая_папка $ лс Рабочий стол Документы Загрузки Изображения Видео  

Linux rmdir: удаление обратно созданию

Используя rmdir , вы можете удалить несколько каталогов, перечислив их один за другим, разделив пробелом.

Если удаляемый каталог не пуст, консоль может сообщить об ошибке. Если мы абсолютно уверены, что знаем, какие каталоги мы удаляем (независимо от содержимого), мы можем использовать опцию --ignore-fail-on-non-empty , которая заглушит сообщение о папках, содержащих файлы, и удалит их полностью.

7. коснуться - Создать файл

После папок пришло время создать новый пустой файл.

  $ коснуться new_file.txt $ лс Рабочий стол Документы Загрузки new_file.txt Картинки Видео  

Linux touch: создать файл, если файл не существует

Touch обновляет дату последнего открытия файла.

8. cat - объединение файлов

Другой способ создать файл — использовать команду cat ( Concatenate ).Команда cat в основном используется для объединения (объединения) файлов, но также может использоваться для отображения файлов или создания нового файла.

Самая распространенная программа cat используется так:

  $ cat файл1.txt файл2.txt  

В приведенном выше примере на экране отображаются два объединенных файла.
Мы можем сохранить результат этой операции в новый файл:

90 123 $ cat файл1.txt файл2.txt> файл3.txt

Linux cat: объединение и запись в

Команда $ cat> образец.txt позволяет залить файл прямо из консоли. Мы можем написать любую строку символов, затем сохранить изменения и выйти с помощью (в зависимости от системы) Ctrl+D/Ctrl+C/Cmd+C.

  $ cat> sample1.txt ... $ лс Рабочий стол Документы Загрузки new_file.txt Изображения sample1.txt Видео  

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

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

 $  > образец2.txt $ лс Рабочий стол Документы Загрузки new_file.txt Изображения sample1.txt sample2.txt Видео  

9. кп - копия

Используйте команду cp ( Copy ) для копирования файлов.Мы можем сделать копию файла в той же папке с новым именем

90 123 90 048 $ лс Рабочий стол Документы Загрузки Картинки sample.txt Видео $ cp sample.txt new_sample.txt $ лс Рабочий стол Документы Загрузки new_sample.txt Изображения sample.txt Видео

Linux cp: копирование принимает 2 параметра: имя или путь копируемого файла/каталога и имя или путь места, куда копировать

Мы также можем создать копию файла с тем же именем, но в подкаталоге:

  $ cp образец.текстовые картинки  

Команда скопирует файл образца в папку «Изображения» под именем sample.txt

Мы также можем сделать копию файла с новым именем, но в подкаталоге:

  $ cp sample.txt Картинки / new_sample.txt  

Команда скопирует файл образца в папку «Изображения» с именем new_sample.txt

Linux cp с опцией -r также позволяет копировать целые папки:

  $ cp -r Картинки New_Pictures  

10. мв - ход

Команда mv ( Move ) используется для перемещения файла в другую папку.

  $ mv sample.txt Документы  

Linux mv: переместить и/или переименовать

Вы также можете использовать его для изменения имени файла:

  $ mv sample.txt new_file.txt  

11. п.м. - удалить

Когда мы закончим работу с файлом и захотим его удалить, просто используйте команду rm ( Remove ):

  $ пог. образец.текст  

Linux rm: удалить файлы и папки

С опцией -r мы также удалим каталоги — так же, как rmdir .

Процессы

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

Каждый процесс в системе имеет свой идентификатор, по которому его можно однозначно идентифицировать, такой номер называется PID - идентификатор процесса .

Вы когда-нибудь сталкивались с ситуацией, когда запуск программы никак не мог закрыться - она ​​не реагировала на нажатия, правый клик или сочетания клавиш? С помощью PID вы можете найти процесс и успешно убить его — закончить.

12. пс - показать процессы

Команда ps ( Состояние процесса ) перечисляет процессы для текущей оболочки:

$ 90 123 90 048 шт. PID TTY ВРЕМЯ CMD 4 недели назад 00:00:00 баш 45 недель назад 00:00:00 пс

Linux ps: список процессов, запущенных в текущей оболочке

ps - показывал только основную информацию о процессах оболочки - pid, терминал, активное время и имя процесса.Мы можем получить полную информацию о процессе текущей оболочки с помощью ps -f ( full ):

90 123 90 048$ пс-ф UID PID PPID C STIME TTY TIME CMD Рита 4 3 0 14:21 tty1 00:00:00 -баш рита 116 4 0 14:38 tty1 00:00:00 пс -f

Чтобы отобразить все процессы, мы можем использовать команду ps -e ( каждые ) или ps -A ( все ) - вы можете встретить оба варианта использования, они возвращают одно и то же.

90 123 $пс-е PID TTY ВРЕМЯ CMD 1? 00:00:00 начало 3 tty1 00:00:00 инициализация 4 недели назад 00:00:00 баш 202 tty1 00:00:00 /Applications/GoogleChrome.app 228 недель назад 00:00:00 пс

Мы можем комбинировать опции, например, -ef :

90 123 90 048 $пс-эф UID PID PPID C STIME TTY TIME CMD корень 1 0 0 14:21? 00:00:00 / инициализация ро root 3 1 0 14:21 tty1 00:00:00 / init ro Рита 4 3 0 14:21 tty1 00:00:00 -баш рита 202 3 0 14:25 tty1 00:00:00 / Приложения / GoogleChrome.приложение рита 218 4 0 14:49 tty1 00:00:00 пс -эф 90 542

13. убить - завершить процесс

Любой процесс может быть завершен командой kill с указанием в качестве аргумента PID процесса, который мы хотим удалить

90 123 90 048 $ убить 202

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

В этом случае мы можем отправить опцию -9 - сигнал безусловного завершения процесса.

90 123 90 048 $ убить -9 202

Уничтожение Linux: использование команды с ключом -9 приведет к немедленному завершению работы, но не сохранит вашу работу!

Unix предоставляет нам множество команд и вспомогательных программ, ускоряющих работу — поиск каталогов или доступ к файлам.

14. найти - найти

Метод найдите , который часто является самым простым и быстрым способом найти местоположение файла или папки с заданным именем. Буквы чувствительны к регистру!

  $ найти Загрузки ~ / рита / Рабочий стол / Загрузки  

мы также можем принудительно определить местонахождение для подсчета ( count ) количество попаданий:

  $ locate -c Загрузки 1  

К сожалению, этот метод, хотя и очень быстрый, имеет и обратную сторону — не обращается напрямую к дереву файловой системы , а использует какую-то ссылку (базу данных) на файл.Так что может случиться так, что метод находит уже удаленный файл (и ссылка на него еще не найдена) или не находит файл, который еще не появился в базе (требуется запуск sudo updatedb ).

15. найти - найти

Более популярный метод поиска файлов и папок — найти . Поиск в дереве каталогов файлов и папок, удовлетворяющих условию.

Список файлов в папке и папках

Без параметров команда выведет список всех файлов в текущем каталоге, а также любых подкаталогов в текущем каталоге.

90 123 $ найти . ./ааа.txt ./pod_folder ./pod_folder/abc.rb ./pod_folder/test.rb ./вау.html ./wow.rb

. - точка в начале пути означает "в текущей папке - папка, в которой я нахожусь"

Поиск определенной папки или пути

Следующая команда будет искать все файлы в подпапке в текущем каталоге.

  $ найти ./pod_folder ./pod_folder ./pod_folder/abc.рб ./pod_folder/test.rb  
Поиск по шаблону

С помощью ключа -имя мы можем искать файлы по имени. Помните, что шаблон * - значит выделить все?

Мы можем объединить эту информацию и искать все файлы ruby ​​в нашей папке и ее подпапках:

  $ найти -имя '* .rb' ./pod_folder/abc.rb ./pod_folder/test.rb ./вау.рб  
Поиск по отрицанию

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

В следующем примере будут перечислены все файлы и подпапки в каталоге, которые не являются файлами ruby:

  $ найти не-имя '* .rb' ./ааа.txt ./pod_folder ./вау.html  
Поиск только файлов или папок

Иногда нам может понадобиться найти только файлы с заданным именем или только папки.Для этого используется переключатель - тип (f - файл / d - каталог).

Наша папка содержит как файл xyz, так и подпапку с тем же именем:

  $ найти -имя 'xyz *' ./xyz.txt ./xyz  
  $ find -type f -name 'xyz *' ./xyz.txt  
  $ find -type d -name 'xyz *' ./xyz  

16. grep — Соответствие шаблону

Программа grep ( Global Regular Expression Print ) — первоначально использовалась для поиска шаблонов в файле и была основной программой UNIX.
Команда grep ищет в текущем каталоге файлы, удовлетворяющие условию - содержащие шаблон в содержимом и совпадающие с именем файла

grep 'text_pattern' имя файла
например

  $ grep 'привет' пример.txt  

— будет искать в файле sample.txt слово привет.

  $ grep 'привет' сумма *  

Приведенная выше команда будет искать все файлы, имена которых начинаются с «sum» (звездочка соответствует любой строке) — например, summary.txt, summer.pdf, Summit.doc и будут отображать на экране только строки, содержащие текст «привет». Если бы в файле summary.txt было написано «привет, мир!» это будет отображаться на экране.

Образец (у нас 'привет') задается как регулярное выражение, позволяющее сопоставить одно или несколько слов/строк, для этого используются специальные символы или выражения, например

  • . - точка заменяет любой 1 символ текста
  • [abc] - означает вставку любого символа из заданных - a, b или c
  • [a-z] — означает любой символ в диапазоне от a до z
  • [^] - отрицание напр.отмечает начало строки
  • $ - отмечает конец строки

Все выглядит хорошо, но что, если мы хотим искать текст на основе символа, который является специальным символом?
Достаточно поставить перед этим символом обратную косую черту \ например, \ * означает звездочку, а не шаблон: соответствует всему.

Параметры — команда grep

Grep также принимает множество полезных опций, например:
-i - шаблон NO учитывает регистр
-n - для каждого файла будет номер строки, где был найден шаблон
-l быть выведено - будут выведены только имена файлов, в которых найден шаблон
-v - противоречие шаблона - будут выведены все строки, которые НЕТ содержат шаблон
-w - ищет не фрагмент текста, а слово целиком соответствие образцу

Примеры:
$ grep '^ [0-9]' sam * - ищет в файлах sam * строки, начинающиеся с
$ grep '[eE] $' sam * - ищет sam * в файлах строки заканчивающиеся с e или E
$grep '\$' Pictures/* - ищет в файлах подкаталога Pictures строки, содержащие знак доллара
$ grep -nwv 'hello' sam * - выведет номер строки sam * файлы, которые не содержат слова «привет»

в середине

17. голова и хвост - показать строки от начала/конца

Две программы для отображения только начала ( головка ) или конца * хвост ) файла. По умолчанию они отображают первые или последние 10 строк текста. С помощью опции -n - где мы заменяем любое число на n, мы можем свободно изменять значение отображаемых строк.

В файле pan_tadeusz.txt - у нас есть первая глава Пана Тадеуша, мы легко можем отобразить первые 20:

90 123 $ голова -20 pan_tadeusz.текст

и последние 15 строк текста:

90 123 $ хвост -15 pan_tadeusz.txt

Вы также можете использовать обобщающие шаблоны:

  $ голова -12 текст [12] .txt  

Приведенная выше команда отобразит первые 12 строк из файлов с именами text1.txt или text2.txt.

18. прозрачный - прозрачный терминал

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

19. история - показать историю команд

Чтобы вернуться к предыдущей команде, просто нажмите стрелку вверх в терминале, так вы сможете вернуться на несколько или дюжину команд. Однако, если мы хотим проверить историю набранных команд, нам понадобится команда history , которая будет печатать историю использованных команд на экране.

20. выход - закрыть терминал

Команда exit закрывает терминал или открытую вкладку.

Несколько слов о стандартном вводе/выводе

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

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

команда <файл - стандартное перенаправление ввода = получение входных данных из источника, отличного от клавиатуры, т.е.выборка параметров из файла для команды

команда > файл - стандартное перенаправление вывода - результат команды будет отправлен в файл (будет создан новый файл или существующий файл с таким именем будет перезаписан)

если не хотите потерять содержимое файла, стоит использовать команду
>> файл - стандартное перенаправление ввода, результат команды отправляется в файл и добавляется в конец

90 123 90 048 $ история > история.текст

Приведенная выше команда запишет для нас историю команд в файл.

Показать первые 5 команд из файла history.txt и перенаправить на новый файл, например history5.txt.

потоков

Перенаправление ввода-вывода можно использовать для создания каналов. Таким образом, чтобы получить интересующий нас результат, мы задействуем несколько различных процессов. Каждый последующий процесс в конвейере получает входные данные от предыдущего процесса (перенаправленный вывод).

Вместо вывода команды история редирект в файл воспользуемся пайпом для вывода первых 5 команд:

90 123 $ 90 048 история | голова -5

Мы также можем найти все команды, которые использовались до сих пор, содержащие ls :

90 123 $ 90 048 история | grep лс

и, наконец, отображать только первые 10 таких команд:

90 123 $ 90 048 история | grep лс | глава

мы также можем сохранить этот результат в файл:

90 123 $ 90 048 история | grep лс | глава > история.текст

и если вы не хотите терять (перезаписывать) текущий контент, используйте >> .

Аналогично предыдущему, добавьте последние 15 использованных команд в файл history.txt , найдите .

Используйте команду ps в списке процессов, чтобы найти строки, содержащие названия вашего браузера (если он у вас запущен).

Редактор vi/vim

Хотя мы уже изучили основные команды Linux, стоит упомянуть, что в терминале есть встроенный редактор — Vi . Vi и его более популярный клон Vim присутствует во всех разновидностях UNIX-систем и с самого начала — в 1970-х годах характеризуется единообразной реализацией независимо от машины, на которой он запущен. Это означает, что мы встретим его, открыв терминал Linux, подключившись к серверу через ssh, и он будет доступен по умолчанию в терминале Mac, и каждый раз он обрабатывается одинаково. В результате Vim широко используется администраторами, опытными пользователями, а также многими программистами.

Ввод в эксплуатацию

Vim можно запустить с помощью команды vi или vim , но гораздо удобнее открыть режим редактирования командой vi имя файла . Если файл не существует, он будет создан автоматически.

90 123 $ vi new_file.txt

Мы полностью управляем Vim с клавиатуры. О мышке пока можно забыть.
Сразу после запуска мы находимся в командном режиме, что для некоторых может быть немного хлопотно.Vim имеет два режима — режим вставки (редактирования) и режим команд (ввод).

Для перехода из командного режима в режим редактирования - ввод, нажмите и ( вставка ) или a ( вставка ) на клавиатуре. Команды в редакторе Vim не требуют Enter, поэтому после ввода и мы можем сразу начать печатать любое предложение.

Верните из режима редактирования в командный режим , нажав клавишу Esc .

Примеры команд, доступных в Vim в командном режиме:

  • a - запись после позиции курсора
  • и - Ввод текста перед курсором
  • А - добавление в конец текущей строки
  • I - писать в начале текущей строки
  • o - добавление новой строки ниже текущей (аналогично размещению курсора в конце строки и добавлению символа ввода в режиме редактирования)
  • O - добавление новой строки над текущей (аналогично установке курсора в начало строки и добавлению ввода)
  • v - выделение строк текста (v и перемещение стрелками ←, →)
  • - отменить последнее изменение
  • R - замена текста
  • s - замена символа, указанного курсором
  • S - замена текущей строки
  • c - Изменить выделенный текст
  • C - изменить на конец строки
  • . - Повторить команду
  • гг - вернуться на первую строку
  • / - Поиск расположения строки в тексте

Проверьте их все!
(после каждого выполнения вы снова находитесь в режиме редактирования — нажмите Esc, чтобы снова оказаться в командном режиме)

Как выйти из vi/vim?

Вопрос может показаться абсурдным, но он небезоснователен. Ведь с «выйти из вима» было много мемов:

Есть много разных способов выйти из редактора Vim.Прежде всего, если вы слушали меня и открываете Vim с vi/vim имя файла , то просто наберите ZZ с клавиатуры в командном режиме - он сделает сохранение и выход.

Ой, не работает?

Вы наверное меня не послушали и сразу открыли vim . Тогда сначала нужно ввести имя для записи - в командном режиме двоеточие + в или : в имени файла и потом :q - позволит выйти из редактора.

К чему вся эта суета по поводу выхода из vi? Ну, минуту назад, если бы вы случайно попали в середину vim, у вас, вероятно, тоже была бы небольшая неприятность. Причем способов сохранения и выхода больше, чем вышеперечисленное:

 
  • : в - сохранить файл
  • :w имя - сохранить файл под новым именем (создать новый или копию)
  • : в! - Принудительная запись файла (например, файлы только для чтения)
  • : wq - сохранить и выйти из файла
  • :q - выйти, если с момента последнего сохранения в файл не было внесено никаких изменений
  • : к! - Принудительный выход без сохранения изменений в файле
  • :x - сохранить и выйти (без сохранения, если нет изменений)
  • : х! - сохранить (принудительно записать) и выйти
  • ZZ - выход из редактора с сохранением файла

Если есть сомнения, всегда можно проверить:

Это просто примеры команд vim.Вы узнаете больше здесь:
- Vim - интерактивный - интерактивный учебник
- Vim Adventures - интерактивная игра с использованием команд Vim

Терминал UNIX — упражнения

Если вам не хватает, приглашаю на задания. Смело используйте весь этот пост, команду man и интернет! Для начала самые простые команды Linux, которые вы легко запомните:

Разминка
  1. Список всех файлов с расширением png
  2. Проверить, есть ли у вас на диске трехбуквенные файлы, состоящие из любых букв, но не из цифр (!)
  3. Список файлов, которые содержат хотя бы одну заглавную букву в имени и одну цифру
Задачи — команды Linux:
  1. Создать каталог «Задачи» на рабочем столе.Затем создайте каталог «Задача-1» в каталоге «Задачи». Создайте вложенную структуру каталогов cat1/cat2/cat3 в текущем каталоге. Подсказка - посмотрите руководство mkdir, обратите внимание на переключатель -p . Удалить все дерево каталогов
  2. одной командой
  3. Создать 4 файла .txt в каталоге "Задачи" - файл1, файл2, файл3, файл4 и любые 4 файла с расширением .py (все файлы могут быть пустыми). Затем перейдите в каталог «Задача 1» и скопируйте в него все файлы, имеющие расширение.ру. Постарайтесь максимально аккуратно скопировать весь каталог «Задачи» и его содержимое в новый каталог под названием «Задачи резервного копирования». Проверьте, как работает переключатель -i . Прочитайте, как работает man cp! и переключатель -v .
  4. Удалить все файлы в каталоге «Задания копирования / Задание-1». Назовите пустой каталог «Задача-1» «Задача-2». В папке «Задача-2» сохраните в файл Historia.txt все команды, которые использовались до сих пор. Переименуйте его командой mv .Затем вернитесь в каталог «Копировать задачи». Переместите файлы с четными номерами в имени в папку «Задачи-копия/Задача-2».
  5. Добавьте последние 12 выполненных команд в файл history.txt. Скопируйте и переместите history.txt в директорию "Tasks/Task-1" под именем history.TXT
  6. Вернуться к рабочему столу. В каталоге рабочего стола найдите файлы с расширением .TXT.
  7. Используйте команду locate для поиска всех путей, содержащих слово net. Используйте grep -n , чтобы узнать, сколько таких строк.См. руководство о том, как работает команда wc .
  8. Список собственных процессов. Сравните вывод команд ps -a , ps -x и ps -ax . Проверьте, что делают переключатели -l и -u . Объясните работу ps -aux . Откройте новое окно терминала и выполните любую команду. Вернитесь к первому окну. Проверьте название расписания, в котором вы находитесь. Вам поможет команда: tty . Просмотрите иерархию процессов с помощью команды pstree .
  9. Попытка завершить процесс браузера на основе его PID
  10. Практика работы с трубами с помощью команды cat . Сохраните список процессов ps в файл 1.txt в каталоге «Задачи». Затем создайте файл 2.txt, содержащий список процессов с подробностями. Объедините содержимое этих файлов в файл 3.txt.
  11. Из файла 3.txt перепишите первые 6 строк в файл 4.txt. Перечислите все файлы на рабочем столе, сохраните список в файл 5.txt, который также будет находиться в каталоге «Задачи».Показать последние 4 строки.
  12. Показать строки, начинающиеся с номера из файла 5.txt. Показать все строки без цифр из файла 5.txt. Отображать строки из файлов с расширением .txt, содержащих строки со словом «abc».

Vim - упражнения:

  1. Скопируйте фрагмент Пана Тадеуша (например, 10 строк) и вставьте в новый файл.
  2. Номер всех строк
  3. Отредактируйте строки так, чтобы одно предложение находилось на одной строке.
  4. Скопируйте первые три строки.
  5. Вставьте скопированные строки 5 раз в конец файла.
  6. Удалить первые 3 строки текста.
  7. Удалить четыре копии первых строк в конце файла (пятую копию сохранить).
  8. Перейти к началу файла.
  9. Поиск ближайшего вхождения "до".
  10. Перейти в конец файла.
  11. Поиск ближайшего вхождения «!» в обратном направлении.
  12. Замените этот символ на "?".
  13. Перейти к пятой строке текста и удалить второе и третье слова.
  14. Заменить все "а" на "#" по всему тексту.
  15. Отменить последнюю операцию.
  16. Сохраните файл на диск.
  17. Удалите все пробелы из разрывов строк по всему тексту.
  18. Выйти из редактора без сохранения изменений в файле.

Полезные ссылки:

Codecademy - интерактивное руководство, содержащее команды unix с нуля

Learn Enough Command Line to Be Dangerous — юмористическая книга, в которой представлены наиболее важные функции терминала unix.

Учебная оболочка — основные команды Linux в книге, доступной бесплатно онлайн

Найти примеры команд 25 практических примеров использования команды найти

См. также:
Курс SQL 60 мин.

Дайте мне знать в комментариях, вам удалось пройти все это? 😉

Как вам такая форма записей - одна длинная запись? Что-то пропало? Может быть, вам тоже нужны команды Linux pdf? Могу подготовить загрузку инструкции в формате pdf.

.

Переименовать файл в Linux

Psychz - Raviteja

Голосов: 50Опубликовано: 23 мая 2017 06:22:54

Файл в Linux можно изменить разными способами. Вот несколько важных способов переименовать файлы в системе Linux.

Команда "mv" (переместить)

Команду "mv" в Linux можно использовать для перемещения, а также для переименования файла в системе Linux. Предположим, вы хотите переименовать файл, который вам нужно переместить в тот же каталог с другим именем. Покажем это на примере.

Представьте, что у вас есть файл с именем "file1" в каталоге "document". Вы хотите переименовать этот файл в "file2". Выполните следующую команду в Терминале.

Mv файл1 файл2

Синтаксис команды "mv":

Mv "старое имя файла" "новое имя файла"

Некоторые параметры, которые можно использовать в команде "mv":

1.Verbose (-v)

Mv -v "старое имя файла" "новое имя файла"

Это подробный параметр, который покажет, какую задачу будет выполнять команда.

Образец вывода -

2. Интерактивный (s)

Mv -i "старое имя файла" "новое имя файла"

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

Команда «Переименовать»

Команда «Переименовать» может использоваться для переименования нескольких файлов.

Его синтаксис имеет следующий вид:

Переименовать файлы 's / old_name / new_name'

Переименовать - [опции] 's / old_name / new_name' files

Предположим, вы хотите изменить все файлы ".jpg" на файлы jpeg просто запустите следующую команду.

Переименовать 's / jpg / jpeg /' * .jpg

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

.

Как найти файлы и папки в Linux

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

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

Как найти файлы в терминале

Да, я знаю... ты не фанат интерфейса командной строки. Это круто — читайте дальше, и вы обнаружите, какие приложения вам нравятся больше. Однако не думайте, что вы можете убежать от команд.Большинство приложений в этом списке являются графическими интерфейсами для find и/или find , так что вы будете продолжать использовать их, но не напрямую.

find

Начнем с самой важной команды. Find — одна из основных утилит Linux. Он ищет строку в каталогах, установленных в соответствии с параметрами («переключателями»), которые вы включили. Этот пример:

find / home / username / Documents -iname «writ *» -type f

означает, что вы выполняете поиск с учетом регистра ( -iname ) для файлов ( -type f ) в папка «Документы» и имена файлов начинаются с «запись».Как видите, вы можете найти подстановочные знаки для службы технической поддержки , а также использовать их для поиска файлов по расширению (например, «*.pdf», чтобы найти все PDF-файлы в папке).

Вы можете искать пустые файлы с помощью -пусто или искать файлы по размеру и времени модификации. Find поддерживает регулярные выражения, и если вы хотите найти содержимое файла, вы можете комбинировать его с grep . Для получения дополнительной информации проверьте официальную документацию (или просто введите man find в терминале).

Найти

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

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

locate -ei grub.cfg

отобразит пути ко всем существующим файлам с именем «grub.cfg». Параметр -i означает «нечувствительный к регистру». Если вы не знаете полного имени искомого файла, просто введите его часть, и locate выведет список всех файлов со словом в имени.

где находится

У этой команды очень специфическая цель, поэтому вы, вероятно, не будете использовать ее каждый день. Где показывает исходное местоположение, двоичные файлы и инструкции пользователя для вашего приложения. Это означает, что вы не будете запускать whereis , , когда хотите найти случайный текстовый файл. Однако вы будете использовать его, когда вам нужно проверить, где GIMP или Firefox хранят свою конфигурацию и исполняемые файлы.

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

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

Большинство файловых менеджеров Linux могут фильтровать файлы по имени или выполнять простой поиск. Если вам не нужны какие-либо дополнительные параметры, это быстрый метод, который выполняет свою работу.

Nautilus

Перейдите к функции поиска (выделена зеленым цветом на скриншоте), нажав Ctrl+F или щелкнув значок увеличительного стекла на панели инструментов. Поиск не чувствителен к регистру, поэтому вам не нужно беспокоиться о большом количестве запросов.Вы можете фильтровать файлы по типу и местоположению, хотя последнее немного ограничено тем, что вы можете настроить.

Dolphin

Поиск Dolphin соответствует тому же сочетанию клавиш (Ctrl+F) или его можно открыть из меню Правка. Позволяет фильтровать файлы по имени, содержимому и расположению (текущая папка или вся файловая система). Если в Baloo включена индексация файлов, Dolphin сможет находить файлы по дате и дате модификации.

Krusader

Krusader популярен среди пользователей KDE как альтернатива Dolphin благодаря многочисленным расширенным возможностям. Функциональность поиска файлов Krusader двояка: она действует как графический интерфейс для команд найти и найти .

Первый позволяет изменять многие детали, такие как тип файла, включенные или исключенные каталоги, размер, право собственности и права доступа к файлам. Krusader может искать ключевые слова в файлах и даже архивах (таких как ZIP и TAR), и вы можете использовать регулярные выражения для настройки вашего запроса.Если вы никогда не пробовали Krusader, сейчас самое время попробовать.

Thunar

Thunar интегрируется с инструментом поиска файлов под названием Catfish для предоставления быстрых, но подробных результатов. Вы можете фильтровать файлы по типу и дате изменения, а также искать содержимое и имя файла. Catfish поддерживает нечеткое (неполное) сопоставление имен файлов, поэтому вам не нужно знать точное имя файла, который вы ищете.

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

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

Kupfer

Kupfer — это простая программа запуска, доступная в репозиториях Debian, Ubuntu, Fedora и Arch Linux. Он поставляется с несколькими плагинами, которые позволяют вам искать файлы с помощью команды locate и могут создавать свой собственный каталог индексированных папок.

Купфер - рабочая пусковая установка. После ввода ключевого слова для поиска Kupfer отобразит список действий, которые вы можете выполнить над/с результатами. Они зависят от включенных подключаемых модулей и могут быть активированы путем выбора их в раскрывающемся меню.

KRunner

KRunner — это средство запуска KDE по умолчанию, которое можно настроить в диалоговом окне Системные настройки — Plasma Search .

Как и Kupfer, он поддерживает различные плагины, которые не только помогают вам находить ваши файлы, но и взаимодействовать с другими приложениями Linux и частями среды рабочего стола Plasma.KRunner может выполнять поиск на YouTube и Википедии, просматривать последние документы, находить файлы по типу и многое другое.

Albert

Albert вдохновлен Alfred Launcher для OS X. Несмотря на то, что он выглядит просто, у Albert есть множество возможностей для экспериментов. У него также есть, как вы можете догадаться, плагины с наиболее важными «файлами».

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

Mutate

Другой вдохновленный Альфредом лаунчер для Linux, Mutate имеет не так много опций, как Albert. Тем не менее, он предлагает множество типов поиска, включая поиск файлов. Вы можете искать файлы по имени файла и расширению файла. Диалоговое окно «Настройки» немного необычное, так как оно показывает, какие скрипты использует Mutate, но не позволяет много конфигурировать, кроме ключевых слов и сочетаний клавиш.

Поиск файлов с помощью специализированных приложений для Linux

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

GNOME Search for files

Если GNOME Search не установлен в вашем дистрибутиве, найдите пакет gnome-search-tool в репозитории.Поиск GNOME поддерживается командами locate , find и grep , а также поддерживает подстановочные знаки и частичное совпадение имен файлов. Вы можете комбинировать несколько параметров поиска, выбрав их из раскрывающегося меню и нажав «Добавить».

KFind

KFind — это GNOME-аналог KDE с несколькими дополнительными параметрами. Он может искать имена файлов или содержимое файлов, и если вы включили индексирование файлов в вашей системе KDE, он может искать индекс, чтобы ускорить процесс.Параметры организованы на вкладках, а последняя вкладка («Свойства») позволяет находить файлы по размеру, дате изменения и владельцу. В дополнение к регулярным выражениям и подстановочным знакам, KFind поддерживает вопросительный знак в качестве замены одного символа в запросе. Например, при поиске «no? Es» будут найдены файлы с именами «nosy», «notes», «nodes» и т. д.

Unity Dash

Пользователи Ubuntu, предпочитающие рабочий стол Unity, знакомы с Dash. Unity Dash может найти ваши файлы и папки по нескольким параметрам (имя файла, дата изменения, тип файла, размер).Чтобы расширить его функциональность, вы можете установить различные прицелы и объективы Unity. Они интегрируют сторонние сервисы с Dash, позволяя вам искать закладки браузера, файлы Google Docs, историю посещенных страниц и многое другое.

SearchMonkey

SearchMonkey — относительно старое, но все еще полнофункциональное приложение для поиска на вашем компьютере. Его основное внимание уделяется регулярным выражениям, и у него есть инструмент «Проверка регулярных выражений», который поможет вам их построить.SearchMonkey поддерживает все необходимые параметры поиска (имена файлов, дату модификации, размер файла и содержимое) и возможность ограничить глубину рекурсивного поиска выбранным количеством папок.

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

DocFetcher

DocFetcher — это настольная поисковая система для людей, которым часто нужно искать содержимое файлов, а не только имена файлов. Подумайте об ученых, студентах и ​​других пользователях, работающих с большими коллекциями текстовых файлов.DocFetcher сначала создает базу данных файлов и папок, которые вы выбираете. Эта база данных автоматически обновляется всякий раз, когда DocFetcher обнаруживает, что файлы были изменены.

При поиске файлов вы можете фильтровать их по типу и размеру или использовать регулярные выражения для точных запросов. DocFetcher может искать файлы PDF, EPUB, HTML, RTF и Office, а также архивы (ZIP, TAR, 7z...) и даже электронные письма Outlook.

Преимущество DocFetcher в том, что у него есть портативная версия, поэтому вы можете носить базу данных и приложение на USB-накопителе и использовать их где угодно.

Recoll

Recoll, пожалуй, самая мощная настольная поисковая система для Linux. Он похож на DocFetcher: вы используете его для поиска содержимого файла. При первом запуске вам будет предложено создать индекс ваших файлов. Вы можете выбрать, какие каталоги и типы файлов будут проиндексированы, а также ограничить файлы по размеру. Recoll настроит расписание обновлений таким образом, чтобы индекс всегда синхронизировался с фактическими файлами. При желании вы можете создать несколько файловых индексов и искать файлы только в одном или во всех из них.

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

Поддерживаемые форматы файлов включают простые текстовые файлы, журналы, страницы руководства, файлы HTML, PDF , CHM, RTF, DJVU и EPUB, файлы Libre и Microsoft Office (включая документы Excel и Powerpoint), архивы TAR, RAR, 7Z и ZIP.Обратите внимание, что для некоторых из них могут потребоваться внешние библиотеки или вспомогательные программы.

Поскольку большинство инструментов поиска файлов поддерживают одни и те же параметры, выбор одного из них в значительной степени зависит от удобства или решения о том, что лучше всего подходит для типичного рабочего процесса. Этот список может показаться длинным, но для Linux существует больше инструментов для поиска файлов. Я упомяну ANGRYsearch, новый проект, который пытается стать самым быстрым инструментом поиска. А ты? Знаете ли вы другие приложения для поиска файлов в Linux? Что вы используете и можете ли вы поделиться советами? Дайте нам знать в комментариях.

Фотографии: скриншот Mutate, скриншот DocFetcher

.

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

Linux - наиболее часто используемых и важных команд Маркировка:
Команды, заканчивающиеся одним или двумя восклицательными знаками, требуют высоких привилегий (даже root), иногда даже физического доступа к компьютеру. Поэтому они могут быть непрактичными при удаленной работе через telnet или ssh.

Автор:
© и отредактировано Петром Дуткевичем

Список команд:
arch - отображает информацию о сборке компьютера, на котором вы работаете
awk - интерпретатор скриптового языка программирования
bzip2 (*.bz2) - высокоэффективный компрессор
cal - настройки даты
cat - перенаправляет потоки данных (например, слияние файлов cat file1 file2> file12
cd - изменение каталога (без параметра: изменение каталога пользователя)
chown !- установка владельца файла
chmod - установка прав доступа к файлу, так называемых атрибутов
clear - очистка окна терминала
cmp - сравнение файлов
копия - копирование файлов и каталогов
cp
- копирует файлы вырезает - вырезает выделенный фрагмент каждой строки файла
date - отображает или изменяет dat
dd - конвертирует и копирует файлы
du
df 0 occupancy
- информирует о свободных блоках на диске
dircmp - сравнивает каталоги
dmesg !! - перечисляет все сообщения отображаемые при запуске системы 90 004 echo - отправка аргументов на стандартный вывод
elm - почтовая программа
exit - выход из консоли
fdisk !! - управление разделами диска
fetchmail ! - управление внешней почтой
файл - проверка файла
найти - поиск файла, каталога
палец ! - найти информацию о пользователе
fsconf !! - программа для изменения настроек файловой системы
fsck !! - восстановление файловой системы
ftp - простой клиент ftp
gcc - компилятор языка c
gnus - браузер новостей
grep - поиск регулярных выражений
gzip (*.гз) - компрессор
например, gzip -9v * сжимать отдельные файлы в каталоге с максимальной эффективностью, перезаписывая старые.
голова - показать начальную часть файла
привет - отправить короткий текст на экран получателя
хост - дать информацию о "сетевых" данных компьютера
имя хоста ! - отображение или изменение имени компьютера
ipcalc - программа, позволяющая выполнять операции с ip-адресами
irc - клиент irc
joe - текстовый редактор
join - специальное объединение файлов
информация О примерно ядра
Kill - Убийство процесса
ПК - Копировать файл
PS - Управление процессами
Меньше - Текстовый браузер, прокрутка с обеих сторон
LFTP - Good FTP Client
Lilo !! - менеджер загрузки (Linux Loader)
ссылки - веб-браузер, отличная поддержка таблиц
ln ! - создает символические ссылки, т.н.ссылки
loadkeys - загружает новую раскладку клавиатуры, например, польскую
locate - эквивалент where
logout - выход из консоли
ls - отображает содержимое каталога browser
900 03002 lynx www 9000!! - компиляция ядра
man - отображает руководство программы, указанной в параметре
mesg - включает и отключает ответ на вызовы
mc - файловый менеджер: midnight Commander
mkdir - создает новый каталог
mkfs 9003 мкфс - форматирование файловой системы
подробнее - текстовый браузер, прокрутка в d
месиво - программа электронной почты
mutt - расширенная программа электронной почты и новостей
подробнее - программа для отображения файла на экране

3 mount ! ! - монтирует диски/диски
mv - переименовывает/перемещает файл
newgrp ! - смена группы текущего пользователя
пакет - простой компрессор
пароль ! - установка пароля
паста - файловые строки
pine - удобная почтовая программа
ping - отправка тестовых пакетов
procmail - средство управления почтой
ps текущий каталог 902 pp04 - отображение информации о процессах 90dd0 path
quota - проверить/установить лимит размера учетной записи
rm - удалить файлы
rmdir - удалить пустой каталог
rpm !! - устанавливает пакеты rpm
scp - удаленная копия зашифрованного файла
экран - открывает новые окна консоли при удаленной работе
sed - включает расширенный способ замены текстовой строки на другую
setenv ! - устанавливает локальную/глобальную переменную
setterm - настройки консоли
sort - сортирует строки в файле
split - создает один или несколько файлов из входного файла
ssh - secure telnet т.н.безопасная оболочка
startx !! - запускает x-window
su !! - позволяет работать с правами root
slrn - хорошие новости и почтовый клиент
tail - отображение конечной части файла
talk - вызов получателя в общий чат в режиме реального времени
tar - файловый архиватор, повышает эффективность сжатия, например: gzip, bzip2
например 1: tar -cz ./dir/> archive.tar.gz
например 2: tar --use-compress-program = bzip2 -c./directory />archive.tar.bz2
telnet - клиент telnet
tin - клиент электронной почты и новостей
top - отображает загрузку процессора отдельными процессами
touch - обновляет дату файла
tr - изменить или удалить символы
uniq - удалить повторяющиеся строки из отсортированных файлов
распаковать - распаковать файлы, запакованные 'pack'
разархивировать - распаковать файлы.почтовый индекс
например: unzip -o -u file.zip распаковывает в текущий каталог, перезаписывает старый
время безотказной работы без подтверждения - сообщает, как долго работает компьютер
в - отображает "кто чем занимается" строки, sw, символы в указанных файлах
wget - сборщик файлов, поддержка ftp, http
например, wget -r -l1 -A gif, jpg http://programy.com/list.html
где - указывает путь к искомой программе
где - другое имя команды где
which - указывает путь к искомой программе
who - информирует о зарегистрированных пользователях
whodo - кто делает
пишет - отправляет несколько строк текста на экран получателя одновременно
vi - сложный текстовый редактор, доступный во всех версиях unix

.

Смотрите также

Только новые статьи

Введите свой e-mail

Видео-курс

Blender для новичков

Ваше имя:Ваш E-Mail: