Работа с файлами в ubuntu

Работа с файлами в ubuntu

ShareIT — поделись знаниями!

Полезно

Узнать IP — адрес компьютера в интернете

Онлайн генератор устойчивых паролей

Онлайн калькулятор подсетей

Калькулятор инсталляции IP — АТС Asterisk

Руководство администратора FreePBX на русском языке

Руководство администратора Cisco UCM/CME на русском языке

Навигация

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Популярное и похожее

Пошаговый ввод в домен Windows 10

Погружение в Iptables – теория и настройка

Топ – 25 худших паролей за 2019 год

DevOps – это философия будущего: кто, что и как?

Linux: команды для работы с файлами и директориями

4 минуты чтения

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

Основы

Итак, в Linux в отличие от Windows существует понятие полного и относительного пути. Разница между ними в том, что полный путь всегда начинается с корневого каталога (корневой каталог обозначается как /), и далее также через слеш происходит перечисление всех названий каталогов на пути к искомому файлу или директории, а в случае относительного пути – в начале слеш не указывается. То есть без слеша путь указывается относительно нынешнего местоположения, а со слешем – относительно корневого каталога. Примеры:

/tmp/file1 — относительный путь;

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

Команды для работы с файлами и директориями

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

  1. cd — смена директории на домашнюю, можно добавлять аргументы – к примеру, cd /root ;
  2. pwd — команда покажет текущий путь к директории, в которой вы находитесь в данный момент;
  3. ls — вывод списка файлов и каталогов по порядку (наверное, самая известная команда) если добавить модификаторы lax , то команда выведет форматированный список всех файлов и директорий (в том числе скрытые);
  4. cat — показывает содержимое файла, к примеру – cat /root/file.txt ;
  5. tail — например, tail /root/file.txt , выводит только конец файла, удобно при работе с логами;
  6. cp — копирование директории или файла, то есть cp /root/file.txt /etc/folder1/file.txt – из /root файл будет скопирован в указанную директорию
  7. mkdir — создание директории, например, mkdir /root/1 ;
  8. rmdir — удаление директории, синтаксис такой же, как и у команды выше;
  9. rm -rf — очень опасная команда (и довольно популярная в интернет фольклоре), но иногда и она может пригодиться – она удаляет директорию со вложенными файлами;
  10. mv — переименование файла или директории, сначала указывается целевая директория и затем её новое название;
  11. locate — поиск файла с заданным названием;

Для наглядности, посмотрите на вывод команды tail

В примере выше, команда tail вывела только последние 11 строк.

Работа с архивами

Работа с .tar архивами – очень часто встречающаяся задача, поэтому хотим привести несколько полезных команд, чтобы не пришлось лишний раз пользоваться поисковиком 🙂

  • tar cf example.tar /home/example.txt — создание .tar архива, который будет содержать в себе текстовый файл example.txt;
  • tar cjf example1.tar.codez2 /home/example1.txt — команда с тем же функционалом, только будет использоваться сжатие Bzip2;
  • tar czf example2.tar.gz /home/example2.txt — опять архивация, только на этот раз со сжатием Gzip;
  • tar xf example.tar — распаковка архива в текущую директорию, если тип сжатия нестандартный, то после расширения нужно добавить тип сжатия (.codez2 или .gz соответственно);
Работа с .rpm пакетами

Так как мы больше всего рассказываем и пишем про FreePBX, который по умолчанию скачивается с официального сайта вместе c СentOS, здесь место для пары команд по работе c RPM пакетами. Почему? Потому что CentOS – RPM-based Linux Distribution 🙂 Команды требуют наличие прав супер — пользователя.

  • rpm -qa — вывод списка всех установленных RPM пакетов в системе;
  • rpm –i rpmpackage.rpm — установка пакета с именем rpmpackage;
  • rpm –e rpmpackage — удаление пакета с таким именем;
  • dpkg -i *.rpm — установка всех пакетов в директории;
Про жёсткие диски

Команда fdisk –l выводит информацию о всех подключенных жёстких и сменных дисках в системе, бывает очень полезной. Ниже пример вывод этой команды (в качестве пример рассматривается OTRS — сервер)

Пожалуйста, расскажите почему?

Нам жаль, что статья не была полезна для вас 🙁 Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!

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

Читайте также:  Kia 7805a как проверить тестером

Содержание

Итак, давайте сначала посмотрим что из себя представляет этот самый терминал. Найти его можно в меню Приложения→Стандартные. Запустив его вы увидите примерно такое окошечко:

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

Управление терминалом

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

Вот что должно было получиться:

Набирать такие команды с клавиатуры посимвольно немного неудобно, поэтому давайте сразу разберёмся с основами управления терминалом. Начнём с копирования/вставки. Стандартные сочетания клавиш Ctrl + C и Ctrl + V в терминале не работают, вместо них используется старая добрая пара Ctrl + Insert с Shift + Insert или же сочетания с Shift : Ctrl + Shift + C для копирования и Ctrl + Shift + V для вставки. Что ж, теперь вы умеете целиком копировать команды из руководств.

Однако обычно всё-таки команды приходится набирать вручную, а не вставлять откуда-то. И вот тут на помощь приходит великолепное свойство терминала, называемое автодополнением. Наберите в терминале символы apti , а потом нажмите клавишу Tab . Терминал автоматически дополнит за вас команду. Кстати, aptitude — это основная консольная утилита управления установкой и удалением приложений, но об этом после.

А теперь попробуйте набрать только apt и нажать Tab . Ничего не происходит? А теперь нажмите Tab два раза подряд. Видите, терминал выдал вам список всех команд, начинающихся с apt .

Удобно, не правда ли? Особенно если привыкнуть.

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

Работа с файлами

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

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

Текущий каталог — это то, что между символами : и $ . Кстати, обратите внимание, перед : стоит имя пользователя и имя компьютера, разделённые символом @ . Но когда вы запускаете терминал, то между : и $ стоит символ

Я говорил, что при запуске терминала текущим каталогом становится домашняя папка пользователя, так вот, символ

— это синоним адреса домашней папки текущего пользователя 1) . Кстати, если вы ещё не знаете, полный адрес домашнего каталога выглядит как

У меня это /home/malamut .

Хорошо, как выяснить текущее местоположение, вроде разобрались, а как же его сменить? Для этого предназначена команда cd , выполните, например, команду

Видите, текущее местоположение изменилось:

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

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

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

Но в этом случае автодополнение работать не будет.

Заменитель адреса домашнего каталога

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

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

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

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

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

В качестве наглядного примера использования cd небольшое путешествие по моему компьютеру:

Как перемещаться по каталогам в первом приближении вроде разобрались, теперь же я расскажу про некоторые другие полезные операции. Посмотреть содержимое текущего каталога можно командой ls :

Обычно командам можно передавать различные модификаторы, например:

Кстати, эта команда показывает различную дополнительную информацию о содержимом каталога.

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

Читайте также:  Как подключить старый телевизор к интернету

Получение справки

Начинающих пользователей Linux очень часто любят пугать так называемыми манами. Дело в том, что man — это система справки о командах для терминала. Пользоваться ей очень легко, просто наберите в терминале

Появится собственно текст справки 2) , разбитый на разделы. Перемещаться по нему можно с помощью стрелок и клавиш PgUp и PgDown , а для выхода просто нажмите Q .

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

Есть и другие способы получения помощи, например похожая на man утилита info . Но чаще всего наиболее полную информацию о программе можно получить именно из man-страниц, а краткую справку — указав ключ —help при вызове 4) .

Разные полезности терминала

На всякий случай немного коснусь ещё одной темы. Бывает так, что вы что-то запустили в терминале и хотите прервать работу этого чего-то. Обычно это сделать очень просто, достаточно нажать на клавиатуре сочетание клавиш Ctrl + C 5) .

Есть и другие управляющие сочетания, например Ctrl + D посылает сигнал конца файла запущенному приложению, а без запущенных утилит делает тоже, что и терминальная команда exit . Ну а если вы хотите более подробно управлять работающими программами, то посмотрите на системный монитор htop , который, правда, нужно доустанавливать отдельно.

История введённых команд

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

У каждой команды в истории есть номер, выполнить снова команду с определённым номером можно набрав в терминале восклицательный знак и номер нужной команды:

А повторить предыдущую набранную команду можно просто написав два восклицательных знака !! .

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

На этом я пожалуй закончу краткое введение в богатейший мир консольных команд Linux и продолжу рассказывать про оставшиеся основные особенности этой многогранной операционной системы:

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

  • сервер с Ubuntu 16.04

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

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

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

pwd

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

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

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

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

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

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

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

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

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

ls -l

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

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

ls -a

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

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

ls -F

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

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

Для перехода в домашний каталог пользователя 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. Внимание! Это буква "О", а не ноль.

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

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

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

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

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

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

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

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

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

Ссылка на основную публикацию
Adblock detector