Как найти директорию папки

Директория – это объект в файловой системе компьютера. Это название употреблялось ранее в информатике, сейчас же употребляются слова «каталог» или «папка». Слово произошло от английского – directory. В системе она указывается в виде полного пути к необходимому ярлыку, например, «C:Program FilesMy_Program».

Обычная файловая система содержит множество каталогов, которые позволяют привести систему к единому порядку. Это делается для того, чтобы пользователю было легче найти что-либо на диске в операционной системе (ОС).

Что такое директории установки

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

Разберем на примере: «C:Program FilesGamesНазвание_игры». Это путь к папке в компьютере, которую пользователю необходимо будет открыть, чтобы попасть в то место, куда установлен софт.

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

Корневая папка и как ее найти

Так называется система хранилищ системной информации, в которой она расположена в строго иерархическом порядке. Обеспечивает всю работу операционной системы Windows, Linux и взаимодействие документов.

В Виндовс это имена дисков, которые были созданы пользователем на компьютере. Их количество зависит от того, на сколько логических частей разбит физический жесткий диск. Для операционной системы Windows корневым каталогом обычно является диск C (если путь не был изменен при установке системе). Для ОС Linux им будет служить «/». А в ней уже находятся системные файлы и документы.

В отличии от Виндовс в Линуксе всегда один корневой каталог. Для того, чтобы найти его в Виндовс следует открыть ярлык «Мой компьютер» на рабочем столе.Корневая папка

Что такое директория игры

Так называется каталог с установленной игрой. Обычно он хранится на диске C в папке Program Files, но в случае инсталляции в другой каталог расположение изменится.

Как найти директорию

Поиск по ярлыку

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

  • кликаете правой клавишей мышки (ПКМ) по ярлыку программы на рабочем столе;
  • в открывшемся окне выбираете расположение файла и кликаете по нему левой кнопкой мыши (ЛКМ). В Windows 7 и старше найти это пункт можно в свойствах ярлыка;
  • откроется окно с искомым содержимым. Сверху, в строке поиска, будет указан путь расположения утилиты.Расположение файла

Поиск по умолчанию

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

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

Поиск на компьютере

Третьим способом будет поиск на компьютере. Заходите в «Мой компьютер», открываете диск С, в правом верхнем углу вводите название в строку поиска и ищете необходимые файлы в папках. Это отнимет больше времени, нежели использование первых двух способов, поскольку система проводит анализ всех элементов попадающих в отбор.

Как создать каталог на компьютере

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

  • в любом месте на компьютере кликнуть правой кнопкой мыши и в контекстном меню выбрать «Создать», а затем «Папку»;Создание каталога
  • на рабочем столе отобразится «Новая папка», которой можно задать любое имя;
  • кликните по кнопке «Enter» на клавиатуре;
  • каталог создан.

Свойства папки

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

Вкладка «Настройка» отвечает за внешний вид, а «Доступ» и «Безопасность» позволяют включать (расшаривать) доступ по сети и задавать права на использование другим локальным и сетевым пользователям.

Основные операции

Существует ряд стандартных операций, которые можно производить над папками:

  1. Копирование. Для этого, кликаете по папке правой кнопкой мыши и выбираете пункт «Копировать». Открываете расположение в которое необходимо произвести копирование. В открывшемся окне кликаете правой кнопкой мыши и выбираете пункт «Вставить».
  2. Удаление. Кликаете по объекту ПКМ и находите пункт «Удалить». Нажимаете на него. Потом подтверждаете действие, кликнув по кнопке «Ок». Она удалится в корзину.
  3. Перемещение. Перейдите к расположению целевой папки, откройте место, куда необходимо ее перетащить, наведите курсор на папку и зажмите ПКМ. Перетащите в открытое окно, и отпустите кнопку мыши, в меню следует выбрать «перемещение». Эта операция идентична команде «Вырезать», но в этом случае нужно в контекстом меню, по нажатию правой клавиши мыши выбрать «Вырезать». А в расположении, куда вставляем каталог – «Вставить».
  4. Переименование. Кликаете по объекту ПКМ, выбираете пункт «Переименовать». Вписываете название и нажимаете «Enter».
  5. Открытие. Папки можно открывать для работы и перемещения в них других объектов. Дважды кликните по ней ЛКМ и она откроется.
В этом разделе вы познакомитесь с основами навигации по системе. Для множества задач нужно уметь добираться до конкретного места в системе, и эти навыки формируют фундамент вашего успеха в работе с Linux. Постарайтесь разобраться в навигации.

Как узнать, в какой директории вы находитесь

Первая команда, которую мы изучим — pwd, сокращение от Print Working Directory (выведи рабочую директорию). Вы скоро увидите, что множество команд в Linux — это аббревиатуры слов, описывающих их. Это помогает лучше их запомнить. Собственно, команда и выводит текущую рабочую директорию. Попробуйте использовать ее.

1. pwd
2. /home/karpaff

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

Как узнать содержимое директории

Мы научились определять, в какой директории мы находимся. Теперь давайте научимся узнавать содержимое директории. В этом нам поможет команда ls — сокращение от list (список). Давайте опробуем ее.

1. ls
2. bin Documents public_html

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

ls [ключи] [директория]

В примере выше квадратные скобки обозначают, что эти пункты опциональны, и мы можем запускать команду и с ними, и без них. Ниже я запустил разные варианты ls, чтобы продемонстрировать ее работу.

1. [email protected]: ls
2. bin Documents public_html
3. [email protected]:
4. [email protected]: ls -l
5. total 3
6. drwxr-xr-x  2 karpaff users 4096 Mar 23 13:34 bin
7. drwxr-xr-x 18 kapraff users 4096 Feb 17 09:12 Documents
8. drwxr-xr-x  2 karpaff users 4096 May 05 17:25 public_html
9. [email protected]:
10. [email protected]: ls /etc
11. a2ps.cfg aliases alsa.d cups fonts my.conf systemd
12. ...
13. [email protected]: ls -l /etc
14. total 3
15. -rwxr-xr-x  2 root root 123 Mar 23 13:34 a2ps.cfg
16. -rwxr-xr-x 18 root root 78 Feb 17 09:12 aliases
17. drwxr-xr-x  2 karpaff users 4096 May 05 17:25 alsa.d
18. ...
19. [email protected]:

Рассмотрим код по частям:

  • Строка 1 — запуск ls в базовой форме. Она вывела список содержимого текущей директории.
  • Строка 4 — запуск ls с ключом -l, который означает, что команда выведет длинный список. В длинном списке есть следующее:
    • Первый символ означает, является ли объект файлом - или директорией d.
    • Следующие 9 символов — типы разрешений для файла или директории.
    • Следующее поле — количество блоков (пока что не задумывайтесь об этом).
    • Дальше — владелец файла или директории (в данном случае — karpaff)
    • Дальше — группа, которой принадлежит файл или директория (в данном случае — users).
    • Следующая часть — размер файла/директории.
    • Затем идет время изменения.
    • И в конце — название файла или директории.
  • Строка 10 — запуск ls с аргументом командной строки /etc. Когда мы так делаем, ls выводит содержимое не рабочей директории, а той, которую мы передали в качестве аргумента.
  • Строка 13 — запуск ls и с ключом, и с аргументом командной строки. Соответственно, здесь был произведен вывод длинного списка директории /etc.
  • Строки 12 и 18 означают лишь, что для краткости я вырезал стандартный вывод некоторых команд. При запуске команд вы увидите более длинный список файлов и директорий.

Пути к файлам

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

Абсолютные и относительные пути

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

Для начала нужно понять, что файловая система под Линуксом — это иерархическая структура. Наверху этой структуры находится корневая директория. Она обозначается одним слэшем /. У нее есть свои поддиректории, у них свои и так далее. Файлы могут находиться в любой из директорий.

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

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

Пример:
1. [email protected]: pwd
2. /home/karpaff
3. [email protected]:
4. [email protected]: ls Documents
5. file1.txt file2.txt file3.txt
6. ...
7. [email protected]: ls /home/karpaff/Documents
8. file1.txt file2.txt file3.txt
9. ...
  • Строка 1 — запускаем pwd, чтобы узнать, где мы находимся.
  • Строка 4 — запускаем ls с аргументом в виде относительного пути. Documents — директория в той папке, в которой мы сейчас находимся. Такая команда может выдать разный результат в зависимости от того, где мы находимся. Если бы у нас был другой пользователь в системе, скажем, Вася, и мы запустили бы эту команду в его домашней директории, выводом стало бы содержимое папки Documents Васи.
  • Строка 7 — запускаем ls с аргументом в виде абсолютного пути. Вывод такой команды будет одинаков вне зависимости от того, где мы сейчас находимся.

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

  • ~ (тильда) — обозначение вашей домашней директории. Например, если ваша домашняя директория /home/karpaff, то к директории Documents можно обратиться по пути /home/karpaff/Documents или по пути ~/Documents.
  • . (точка) — указание на директорию, где вы сейчас находитесь. Например, в примере выше на 4 строке мы обратились к директории Documents с помощью относительного пути. Тот путь можно было записать как ./Documents (Обычно в этом нет необходимости, но ниже мы рассмотрим примеры того, где это может пригодиться).
  • .. (две точки) — указание на родительскую директорию. Вы можете использовать такое сокращение в пути несколько раз, чтобы подниматься по иерархии. Например, если вы были в папке /home/karpaff, вы можете запустить команду ls ../../ и выводом будет список содержимого корневой директории.

Теперь вы знаете, что к местоположению можно обращаться множеством разных способов. Некоторые из вас зададутся вопросом, какой вариант лучше использовать? Ответ: любой, который больше нравится. Обращаетесь вы к файлу или директории, в командной строке вы обращаетесь по пути, а путь вы можете составить, используя любой из элементов, представленных выше. Лучший подход в этом деле — удобный именно для вас.

Примеры:
1. [email protected]: pwd
2. /home/karpaff
3. [email protected]:
4. [email protected]: ls ~/Documents
5. file1.txt file2.txt file3.txt
6. ...
7. [email protected]: ls ./Documents
8. file1.txt file2.txt file3.txt
9. ...
10. [email protected]: ls /home/ryan/Documents
11. file1.txt file2.txt file3.txt
12. ...
13. [email protected]:
14. [email protected]: ls ../../
15. bin boot dev etc home lib var
16. ...
17. [email protected]:
18. [email protected]: ls /
19. bin boot dev etc home lib var
20. ...

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

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

Для передвижения по системе используется команда cd, сокращение от change directory (сменить директорию). Она работает следующим образом:

cd [местоположение]

Подсказка: если вы запустите команду без аргументов, она вернет вас в домашнюю директорию.

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

Пример:
1. [email protected]: pwd
2. /home/karpaff
3. [email protected]: cd Documents
4. [email protected]: ls
5. file1.txt file2.txt file3.txt
6. ...
7. [email protected]: cd /
8. [email protected]: pwd
9. /
10. [email protected]: ls
11. bin boot dev etc home lib var
12. ...
13. [email protected]: cd ~/Documents
14. [email protected]: pwd
15. /home/karpaff/Documents
16. [email protected]: cd ../../
17. [email protected]: pwd
18. /home
19. [email protected]: cd
20. [email protected]: pwd
21. /home/karpaff

Автодополнение

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

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

Это сложно продемонстрировать в статье, так что попробуйте потестировать эту фичу сами. Если вы напечатаете в командной строке cd /hTab/<начало вашего имени пользователя>Tab, вы поймете, как это работает.

Что нужно запомнить

Команды

pwd
Выводит текущую директорию.

ls
Выводит писок содержимого директории.

cd
Переводит в другую директорию.

Понятия

Относительный путь
Местоположение файла или директории относительно вашего текущего местоположения в системе.

Абсолютный путь
Местоположение файла или директории относительно корневой папки файловой системы.

Практические задания

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

1. Начнем с передвижения по системе. Используйте команды cd и ls, чтобы больше узнать о директориях вашей системы и о том, что в них есть. Постарайтесь использовать разные варианты относительных и абсолютных путей. Интересные места для исследования:

/etc — здесь хранятся конфигурационные файлы системы.
/var/log — здесь хранятся файлы логов для разных системных программ. (У вас может не быть разрешений просматривать все в этой директории. Пусть это вас не останавливает. Пара сообщений об ошибках никому не помешает)
/bin — место, в котором хранятся некоторые часто используемые программы.
/usr/bin — еще одно место, в котором хранятся системные программы.

2. А теперь вернитесь в домашнюю директорию 4 разными способами.

3. Постарайтесь почаще использовать автодополнение. Зачем напрягаться, если компьютер может что-то делать за вас?


Загрузить PDF


Загрузить PDF

В этой статье мы расскажем вам, как в Windows найти полный путь к файлу с помощью строки поиска, Проводника или окна «Выполнить».

  1. Изображение с названием Find a File's Path on Windows Step 1

    1

    Нажмите Win+S. Откроется строка поиска.

  2. Изображение с названием Find a File's Path on Windows Step 2

    2

    Введите имя файла. Откроется список совпадающих результатов.

  3. Изображение с названием Find a File's Path on Windows Step 3

    3

    Щелкните по имени файла правой кнопкой мыши. Откроется меню.

  4. Изображение с названием Find a File's Path on Windows Step 4

    4

    Нажмите Открыть папку с файлом. Откроется папка с нужным файлом.

  5. Изображение с названием Find a File's Path on Windows Step 5

    5

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

    • Нажмите Ctrl+C, чтобы скопировать путь.
    • Нажмите Ctrl+V, чтобы вставить скопированный путь.

    Реклама

  1. Изображение с названием Find a File's Path on Windows Step 6

    1

    Нажмите Win+E. Откроется окно Проводника.

    • Клавиша Windows находится в левом нижнем углу клавиатуры.
  2. Изображение с названием Find a File's Path on Windows Step 7

    2

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

  3. Изображение с названием Find a File's Path on Windows Step 8

    3

    Щелкните по нужному файлу правой кнопкой мыши. Откроется меню.

  4. Изображение с названием Find a File's Path on Windows Step 9

    4

    Выберите Свойства. Эта опция находится внизу меню.

  5. Изображение с названием Find a File's Path on Windows Step 10

    5

    Найдите путь к файлу в строке «Расположение». Вы найдете ее посередине окна.

    • Чтобы скопировать путь, дважды щелкните по нему — путь будет выделен, а затем нажмите Ctrl+C.
    • Чтобы вставить путь, нажмите Ctrl+V.

    Реклама

  1. Изображение с названием Find a File's Path on Windows Step 11

    1

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

  2. Изображение с названием Find a File's Path on Windows Step 12

    2

    Нажмите Win+R. Откроется окно «Выполнить».

  3. Изображение с названием Find a File's Path on Windows Step 13

    3

    Перетащите файл в окно «Выполнить». Когда значок файла окажется в окне «Выполнить», отпустите кнопку мыши.

  4. Изображение с названием Find a File's Path on Windows Step 14

    4

    Найдите полный путь к файлу в поле «Открыть». В этом поле отображается путь к файлу.

    • Чтобы скопировать путь, дважды щелкните по нему — путь будет выделен, а затем нажмите Ctrl+C.
    • Чтобы вставить путь, нажмите Ctrl+V.

    Реклама

Об этой статье

Эту страницу просматривали 18 369 раз.

Была ли эта статья полезной?

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

  • Навигация
  • Поиск
  • Работа с папками
  • Работа с файлами
  • Переименование, перемещение и копирование

Навигация

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

pwd

Она выведет текущую рабочую директорию (print working directory). 

Если вам нужно перейти в другую папку, для этого используется команда cd (change directory) с указанием пути к нужной вам папке:

cd /home

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

/ корневая папка сервера
.

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

find . -name hello.txt
..

директория, расположенная на уровень выше текущей. Если вы находитесь в папке /home/user, то комбинация .. будет обозначать папку /home. То есть, чтобы вернуться на один уровень назад, необязательно вводить весь путь: 

cd ..
~

домашняя папка текущего пользователя. Например, запустить скрипт some-script.sh из домашней папки, когда вы находитесь в другой директории, можно так:

sh ~/some-script.sh

предыдущая посещённая директория. Представим, что вы перешли в папку /home, потом вам потребовалось изменить настройки в папке /etc. Чтобы вернуться назад, достаточно использовать команду: 

cd -

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

Абсолютный путь — это полный путь от корневой папки сервера «/». Например, вот такой: 

/var/www/data/username/data/www/example.com/

Также к абсолютным относятся пути, в которых используется ~ — указание на домашнюю папку текущего пользователя. Например, при доступе к файлу ~/.bash_profile он всегда будет открываться из одного и того же места: вместо ~ будет использоваться значение переменной окружения $HOME, которое не меняется.

Относительный путь — это неполный путь. Он указывается относительно какого-то объекта: например,  текущей рабочей директории. То есть в начале отсутствует символ корневой папки «/».

./docs/files/file.txt

file.txt

Представим, что мы сейчас работаем с файлами в папке /var/www/data/username. Нам нужно отредактировать содержимое в директории на уровень выше — /var/www/data. Чтобы управлять данными в этой папке, нам не обязательно постоянно указывать полный путь к ним — можно работать с относительным, начиная его с «../»

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

Чтобы отобразить список содержимого папки, можно использовать команду ls (list). Если дополнить её ключами -al, она покажет типы данных, разрешения и скрытые файлы. Следующий пример покажет названия файлов и папок текущей рабочей папки:

ls

А этот выведет в терминал подробный список содержимого папки /etc:

ls -al /etc

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

  • Ubuntu и Debian:

    apt -y install mc
    
  • CentOS:

    yum -y install mc

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

Поиск

С помощью команды find можно найти на сервере папку или файл по набору условий. Структура команды проста: 

find [где искать] [как искать] [что искать]

Например, мы знаем название файла hello.txt, но не знаем, где именно на сервере он лежит. Найти его поможет конструкция:

find / -name "hello.txt"
  • / указывает, что искать надо, начиная с корневой папки сервера. Если вам известно, где может лежать искомый файл, можно задать путь точнее.
  • -name указывает, что искать надо строго по имени.
  • "hello.txt" — имя файла, который нам нужно найти. Если известна только часть имени, можно указать сокращённый вариант: "hello*", "*.txt"

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

-type

Позволяет указать тип искомых данных: -type f — файлы, -type d — директории

-perm

Позволяет вывести файлы с определённым уровнем доступа. Например, —perm 777

-empty

Отображает только пустые файлы или папки

-user

Позволяет искать данные среди файлов, принадлежащих конкретному пользователю: -user root

-group

Позволяет искать данные среди файлов, принадлежащих определённой группе пользователей: -group www-data

-mtime

Позволяет задать условие относительно времени изменения файлов:

  • -mtime 7 — файлы, менявшиеся в течение последних 7 дней;
  • -mtime +7 — файлы, менявшиеся в срок более чем 7 дней назад;
  • -mtime -14 — файлы, менявшиеся в срок менее чем 14 дней назад.

-atime

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

-size

Позволяет уточнить размер (или диапазон размера) искомых файлов

-exec COMMAND {}

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

Больше информации о возможностях find можно узнать в файлах документации:

man find

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

whereis php

Работа с папками

Для создания новых директорий используется команда mkdir с указанием пути до создаваемой папки. Пример ниже создаст папку /new в существующей директории /home/user:

mkdir /home/user/new

Если нужно создать сразу несколько вложенных папок, можно использовать параметр -p. В таком случае все несуществующие директории, указанные в пути, будут созданы автоматически. Представим, что нам нужно создать вложенные папки docs/photos/2020-08-17 в текущей директории — это будет выглядеть так:

mkdir -p docs/photos/2020-08-17

Если нужно создать несколько папок за раз, можно просто перечислить их через пробел:

mkdir docs pictures games

Удалить папку можно с помощью команды rmdir с указанием пути. Папка будет удалена только в случае, если она пуста (можно использовать параметр --ignore-fail-on-non-empty, чтобы удалить папку в любом случае). Для удаления нескольких вложенных папок можно аналогично использовать параметр -p. Пример ниже удалит папку /photos и все каталоги внутри неё: 

rmdir -p docs/photos

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

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

Создание

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

Самый простой, одновременно создающий и файл, и недостающие папки — команда touch. Достаточно передать ей полный путь к файлу. Для примера создадим в папке docs папку copies, а внутри неё — файл copies-list.txt:

touch docs/copies/copies-list.txt

Несуществующая папка copies создастся автоматически.

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

touch file1.txt file2.txt file3.txt

Ещё один способ создания новых файлов — вызвать какой-нибудь консольный текстовый редактор с указанием полного пути к файлу. Однако все папки придётся создать заранее. Тогда редактор автоматически создаст файл и откроет его для редактирования. Если не сохранить файл в редакторе, даже пустой, он не будет создан. Команда ниже добавит новый файл с помощью редактора vi:

vi new-file.txt

Для сохранения и выхода из файла в vi нужно нажать клавишу Esc, ввести сочетание :wq и нажать Enter. Для выхода без сохранения нужно также нажать Esc, ввести сочетание :q! и нажать Enter.

Ещё пара способов создания пустых файлов: 

cat > new-file.txt

echo > new-file.txt

Редактирование

Для редактирования файлов используются консольные текстовые редакторы. Самые известные — vi и nano. В некоторых дистрибутивах vi заменён на vim (vi improved, улучшенный vi) или vim.tiny

Редактор vi будет доступен вам по умолчанию на большинстве Linux-систем.

А теперь к делу. Vi (более известен как Vim) — старый, очень гибкий и при этом не очень простой в плане управления редактор. Собственно, так он и попал в популярные программистские и админские шуточки. 

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

vi

Чтобы закрыть Vim (без сохранения), введите сочетание :q!

Если указать редактору путь к файлу, он откроет его для редактирования. Если файл не существовал, он будет создан:

vi new-file.txt

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

Чтобы начать ввод, нужно перейти в режим редактирования с помощью клавиши I. Чтобы вернуться в режим просмотра, нажмите Esc.

Перемещение по тексту выполняется с клавиатуры:

  • перемещение в начало текста: Esc + дважды G
  • перемещение в конец текста: Shift + G
  • перемещение по строке горизонтально: стрелки
  • перемещение по строкам вертикально: стрелки
  • отображение номеров строк: Esc, введите :set number, нажмите Enter
  • перемещение по номерам строк: Esc, введите : номер строки, нажмите Enter

Для выхода с сохранением файла нажмите Esc и введите :wq!

Текстовый редактор vim — краткое руководство

Более современной и удобной альтернативой Vim считается редактор nano. Современные дистрибутивы включают его по умолчанию, но на ранних версиях устанавливать придётся вручную: 

  • Ubuntu и Debian:

    apt -y install nano
  • CentOS:

    yum -y install nano

Вызов nano без аргументов откроет пустой редактор. Можно начать ввод (при сохранении вам будет предложено указать имя и сохранить файл) или вызвать режим помощи со списком доступных команд с помощью сочетания Ctrl+G.

Для сохранения файла нажмите Ctrl+O — редактор предложит ввести имя файла: введите имя и нажмите Enter. Если файл существовал, и имя изменять не требуется, просто нажмите Enter.

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

Чтение

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

Команда cat позволяет вывести в терминал всё содержимое файла, который указан в качестве аргумента: 

cat example.txt

Однако, если мы заведомо знаем, что в файле большой объём информации, нет смысла выводить его целиком. Например, команды head и tail могут вывести часть содержимого с начала или конца файла соответственно. Если добавить к ним ключ -n, можно уточнить, сколько строк текста нужно вывести:

head -n 3 example.txt

tail -n 3 example.txt

Помимо прочего, команда tail очень удобна для чтения логов с ключом -f. В таком режиме она открывает файл в режиме ожидания и выводит все добавляемые данные. Пригодится для тестирования или дебаггинга.

Иногда нам всё-таки нужно полностью просмотреть файл. При этом читать его вывод в терминале неудобно. На такие случаи есть команда less — она открывает файл (или переданный в неё вывод другой команды) в режиме чтения: 

less example.com

В режиме чтения less можно перемещаться, искать текст и многое другое. Все командные последовательности и горячие клавиши можно вывести с помощью параметра --help:

less --help

Для выхода из режима чтения введите q и нажмите Enter.

Удаление

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

Самая простая версия rm удалит файл с предварительным подтверждением — для этого потребуется ввести y и нажать Enter:

rm new-file.txt

Для полного же уничтожения всего и вся к команде добавляются параметры -rf. Первый отвечает за рекурсивное удаление данных (т.е. удаление вложенных файлов и папок), второй позволяет отключить подтверждение при удалении. Например, следующая команда удалит папку photos, размещённую в папке docs, и всё её содержимое:

rm -rf docs/photos

Для шуток над неопытными администраторами им под тем или иным предлогом предлагают выполнить команду rm -rf [/] (без квадратных скобок). Она удаляет всё содержимое сервера от корня. Результат — все данные безвозвратно теряются, а сервер перестаёт работать. 

Скачивание и загрузка

Для передачи файлов на сервер и с сервера есть много способов. Самые простые — использование wget, curl или scp.

  1. wget позволяет скачивать данные на сервер. Он поддерживает HTTP, HTTPS и FTP протоколы.

    wget [как скачать] [откуда скачать]

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

    wget https://ru.wordpress.org/latest-ru_RU.tar.gz

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

    wget -P /var/www/example.com https://ru.wordpress.org/latest-ru_RU.tar.gz

    Полный список параметров wget можно посмотреть в справочной информации: 

    man wget
  2. curl используется как для скачивания файлов на ваш сервер, так и для передачи данных с него на другие серверы / хранилища. Он универсальнее wget благодаря огромному количеству поддерживаемых протоколов: FTP, HTTP, HTTPS, IMAP, POP3, SCP, SFTP, SMB,  SMTP, Telnet и др.

    curl [как скачать] [откуда скачать / куда загрузить]

    В современных дистрибутивах curl установлен по умолчанию. При необходимости установить его вручную можно следующим образом: 

    • Ubuntu и Debian:
      apt -y install curl
    • CentOS:
      yum -y install curl

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

    curl -O https://ru.wordpress.org/latest-ru_RU.tar.gz

    В примере мы скачиваем архив latest-ru_RU.tar.gz по ссылке и сохраняем его в текущую рабочую директорию с таким же именем — за это отвечает ключ -O. Если использовать опцию -o, можно задать своё имя (wp.tar.gz) для сохраняемого файла: 

    curl -o wp.tar.gz https://ru.wordpress.org/latest-ru_RU.tar.gz

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

    curl -T filename.txt https://example.com/downloads/filename.txt

    Здесь файл filename.txt из текущей рабочей директории загружается на сайт example.com в папку downloads/ и сохраняется с именем filename.txt. Пример подразумевает, что у нас есть права на запись в указанный каталог.

    Остальные возможности curl можно узнать в справочной информации: 

    man curl
  3. Утилита scp позволяет копировать файлы между двумя серверами, используя протокол SSH. 

    scp [где взять файлы] [куда их загрузить]

    Например, для передачи файла filename.txt с нашего сервера на удалённый сервер 1.2.3.4 в папку new-documents пользователя username можно использовать следующую команду:

    scp ~/documents/filename.txt username@1.2.3.4:/home/username/new-documents

    В процессе система запросит у нас пароль пользователя username для подключения к удалённому серверу. После авторизации файл будет скопирован на целевой сервер в указанную папку.

    Чтобы скачать файл с удалённого сервера, достаточно немного видоизменить нашу команду: 

    scp username@1.2.3.4:/home/username/documents/filename.txt ~/new-documents/

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

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

    scp username1@1.2.3.4:/home/username1/documents/filename.txt username2@2.3.4.5:/home/username2/new-documents

Запуск исполняемых bash-скриптов

Чтобы запустить скрипт script.sh на сервере, нужно выполнить два шага: 

  1. Настроить права на запуск файла для пользователей:

    chmod +x ./script.sh
  2. Запустить скрипт. Если вы находитесь в той же директории, где лежит скрипт, достаточно вызвать его по имени: 

    ./script.sh

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

    sh ./script.sh

    либо 

    /bin/bash ./script.sh

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

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

Весь список существующих алиасов системы можно вывести с помощью команды alias:

Создать свой постоянный алиас можно с помощью файла .bashrc, размещённого в домашнем каталоге вашего пользователя. Нужно открыть его для редактирования:

vi ~/.bashrc

В соответствующем разделе нужно добавить ваш алиас в следующем формате:

alias [короткая команда]='[исходная команда]'

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

alias myScript='sh /путь/к/скрипту/script.sh'

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

source ~/.bashrc

После этого вы сможете вызывать ваш скрипт с помощью короткой команды.

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

Как настроить cron по ssh

Переименование, перемещение и копирование файлов и папок

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

cp [что копируем] [куда копируем]

C её помощью можно, к примеру, создать копию конфигурационного файла, который вы хотите изменить. Здесь мы создаём копию конфигурационного файла nginx.conf

cp nginx.conf nginx.conf.copy

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

cp -r /docs /files

Здесь мы создаём копию папки docs со всем её содержимым с именем files.

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

mv [что переместить/переименовать] [куда переместить/как назвать]

Например, следующая команда переместит файл file.txt в папку new:

mv file.txt docs/new

Переименовать файл не сложнее:

mv /docs/new/file.txt /docs/new/todolist.txt

В этом примере файл file.txt переименовывается в todolist.txt

Аналогично можно перемещать и переименовывать директории. 

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

Структура каталогов Linux

  • Главная

  • Инструкции

  • Linux

  • Работа с файлами и каталогами в Linux

Введение

Если у вас нет большого опыта работы с системами Linux, вы можете быть очень удивлены возможностями управления операционной системой из командной строки. Понимание принципов работы через консоль пригодится и для управления домашним компьютером, например, с ОС Ubuntu, и для администрирования серверов cloud.timeweb.com с установленными Unix-подобными системами. В этой статье мы попытаемся ознакомить вас с основами. Это руководство должно дать вам необходимый минимум знаний и хорошую отправную точку для дальнейших исследований. 

Работа С Файлами И Каталогами В Linux (1)

Навигация

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

Поиск своего местоположения

После того как вы подключаетесь к своему серверу, вы обычно попадаете в домашний каталог вашей учетной записи пользователя (если не применены нестандартные настройки). Домашняя директория — это директория, которая используется для хранения пользовательских файлов, например документов, фото, видео-файлов. В этой директории вы имеете полные права для совершения любых действий, таких как создание, перемещение, удаление файлов и директорий. Чтобы узнать, где находится домашний каталог пользователя, используйте команду pwd (сокращение от print working directory). Эта команда выведет путь до каталога, в котором вы находитесь в данный момент:

pwd

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

/home/demo

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

Перемещение по файловой системе

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

Чтобы изменить текущий каталог, в linux используется команда cd (сокращение от change directory), за которой, в качестве аргумента, следует имя каталога, относительно текущего:

cd Documents

или абсолютный (полный) путь:

cd /home/demo/Documents

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

cd ..

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

cd ~

Чтобы перейти в корневой каталог:

cd /

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

Теперь, когда мы знаем, как перейти в нужный нам каталог и отобразить путь до него, пришло время разобраться, как просмотреть содержимое каталога. Чтобы это сделать, в linux используется команда ls (сокращение от list):

ls

В ответ мы увидим список файлов и директорий:

addresses.txt    Documents    Downloads    grades.txt 

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

ls /home/demo/Documents

Чтобы вывести список всех файлов в подкаталогах, используйте флаг -R:

ls -R /home/demo/

Так же в linux-команде ls можно передать дополнительные флаги. Например, чтобы вывести подробную информацию о содержимом каталога, такую как права доступа, дату последнего изменения, можно использовать команду:

ls -l /home/demo/

Чтобы увидеть скрытые файлы и директории (обычно их имена начинаются с точки) нужно использовать флаг -a. Флаги можно комбинировать друг с другом, например:

ls -la /home/demo/

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

Для вывода содержимого файла в терминал, используется команда cat (сокращение от concatenate). В качестве аргумента ей необходимо передать имя файла в текущем каталоге или путь до него:

cat file1.txt
cat /home/demo/file2.txt

Поиск файлов

Иногда вам может понадобиться найти местоположение определенного файла. Поиск файла в linux легко можно сделать с помощью команд find или locate.

Команда find ищет файл в определенном месте и принимает два аргумента: путь до директории, в которой нужно произвести поиск, и имя файла, который нужно найти. Для того, чтобы поискать файл с именем file1.txt в домашней директории пользователя demo, команда будет выглядеть следующим образом:

find /home/demo -name file1.txt

Команда locate, как и команда find, выполняет поиск файлов, но принимает только один аргумент. Команда locate ищет все возможные файлы и каталоги с заданным именем в системе:

locate file1.txt

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

Создание файла

Чтобы создать файл в linux, мы можем воспользоваться командой touch. Например, чтобы создать файл с именем file1.txt в домашней директории пользователя, введите в терминале команду:

touch ~/file1.txt

Создание каталога

Для того, чтобы создать папку в linux, используется команда mkdir (сокращение от make directory). В качестве аргумента передайте имя директории или путь, по которому хотите ее создать:

mkdir ~/Photos 

Удаление файлов и каталогов  

Удаление файла в linux осуществляется при помощи команды rm (сокращение от remove). 

Для удаление каталога используется эта же команда rm, но с флагом -r:

rm /home/demo/file1.txt
rm -r /home/demo/Photos

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

Перемещение и переименование

Для того, чтобы переместить, или переименовать файл в linux используется универсальная команда mv (сокращение от move).

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

mv file1.jpeg /home/demo/Photos/

Для переименования файла из file1.txt в file2.txt используется следующая запись:

mv file1.txt  file2.txt

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

mv file1.txt /home/demo/Documents/file2.txt

Копирование

Команда cp (сокращение от copy), копирует файл из одного места в другое. В отличие от команды mv, используемой для перемещения, команда cp сохраняет исходный файл в его текущей директории и создает копию в другой директории. Команда для копирования файла с именем file1.txt в каталог /home/demo/Documents будет выглядеть так:

cp file1.txt  /home/demo/Documents
cp  /home/demo/Ptotos/photo1.jpeg  /home/demo/Documents

Если вы хотите скопировать директорию, то необходимо использовать флаг -R:

cp -R /home/demo/tutorilas /home/demo/Documents/

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

В linux размер папки можно узнать при помощи команды du (сокращенно от disk utility). Если ввести эту команду без аргументов, то она выведет размеры всех файлов внутри текущей директории. Обычно, в качестве аргумента ей передают путь до директории, размер которой необходимо узнать, и флаги -sh для более красивого и читаемого вывода:

du -sh /home/demo/Music

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

df -h /dev/sda1

Отображение размера директории в конкретных единицах измерения

По умолчанию команда du отображает размер каталога в байтах. Если нам вдруг потребуется отображать размер файлов и каталогов в килобайтах или мегабайтах, используется эта же команда du, но к ней необходимо будет добавить флаг -k (килобайты) или -m (мегабайты).

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

du -k /home/demo/

Или в мегабайтах:

du -m /home/demo/

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

Чтобы узнать размеры ее файлов, нам понадобится флаг -a.

du -ah /home/demo/

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

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

Чтобы открыть файл с именем file1.txt, введите:

nano file1.txt

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

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

Для того чтобы вырезать строку и поместить ее в буфер обмена, переместите курсор на нужную строку и нажмите Ctrl+K.

Чтобы вставить строку из буфера, нажмите Ctrl+U.

Чтобы скопировать текст произвольной длины, сначала требуется его выделить. Для этого поместите курсор на начало текста, который планируется копировать, и нажмите Ctrl+6. Перемещайте курсор, текст будет выделяться.

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

Чтобы вырезать выделенный текст, нажмите Ctrl+K.

Поиск и замена

Для поиска используйте комбинацию клавиш Ctrl+W, затем введите поисковый запрос и нажмите Enter. Курсор переместится к первому найденному совпадению. Чтобы продолжить поиск до следующего совпадения, используйте комбинацию Alt+W.

Сохранение и выход из редактора

Если вы хотите сохранить текущие изменения в файле, нажмите комбинацию клавиш Ctrl+O. Если вы редактируете новый файл, вам будет предложено дать ему имя. Это сохранит текущие изменения, при этом nano останется открытым и вы сможете продолжить работу. 

Если вы хотите выйти из редактора нажмите комбинацию клавиш Ctrl+X.

Понравилась статья? Поделить с друзьями:
  • При установке драйвера на видеокарту выдает ошибку код 43 как исправить
  • Сталкер как найти документы для оружия
  • Как найти игрока в майнкрафте команда
  • Как исправить вытянувшуюся рассаду баклажан
  • Как найти расстояние от основания пирамиды