Как перейти в папку или на другой диск в командной строке

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

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

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

Начнем с классической командной строки.

Для поиска в консоли CMD используется две основные команды: и .

Способ с использованием первой команды не слишком быстрый, но все же он более быстр, чем поиск с использованием средств Проводника.

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

where /R C: log54.txt

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

Как перейти в папку или на другой диск в командной строке

Поддерживается поиск с использованием замещающих символов, например, команда where /R C: *g54*.* станет искать файлы, в имени которых имеется «g54» независимо от расширения.

Как перейти в папку или на другой диск в командной строке

Быстрее where работает команда dir, выводящая не только путь к каталогу с искомым файлом, но и количество объектов в каталоге.

Выглядит команда так:

dir /a /s C:log54.txt

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

Как перейти в папку или на другой диск в командной строке

Как и в случае с where, поддерживается использование замещающих символов.

Как перейти в папку или на другой диск в командной строке

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

Команда CD. Смена текущего каталога.

Как перейти в папку или на другой диск в командной строке

Как перейти в папку или на другой диск в командной строке

Как перейти в папку или на другой диск в командной строке

Как перейти в папку или на другой диск в командной строке

Как перейти в папку или на другой диск в командной строке

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

Как перейти в папку или на другой диск в командной строке

Как перейти в папку или на другой диск в командной строке

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

  • Для перехода в корень диска применяется команда
  • Для перехода в любой каталог диска применяется команда (из корня диска) и команда (из любого каталога или подкаталога).
  • Для перехода в подкаталог применяется команда (из каталога) и команда (из корня диска).

Как перейти в папку или на другой диск в командной строке

Теперь с диска «D» перейдем в папку «Fonts», расположенную в папке «Windows» на диске «C»:cd /D c:/windows/fonts

Как перейти в папку или на другой диск в командной строке

Команда СD может записываться как СHDIR. CD и CHDIR являются аналогичными командами и обе являются сокращениями от англ. «change directory» – поменять каталог.

Как перейти в папку или на другой диск в командной строке

Работая в командной строке (CMD) все действия приходится выполнять при помощи текстовых команд и переход в другую папку не исключение. Для этого

Как перейти в папку в командной строке

Как перейти в папку или на другой диск в командной строке

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

Как перейти в папку или на другой диск в командной строке

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

Как перейти в папку или на другой диск в командной строке

Команду CD можно вводить как СHDIR, логика ее работы от этого не меняется.

Как перейти на другой диск

Если вам нужно перейти на другой диск, например, с диска C на диск D, то команду cd нужно выполнять с параметром /D. Например, если вам нужно перейти с диска C на диск D в папку GAMES, то вам нужно ввести команду:

cd /D d:games

Как перейти в папку или на другой диск в командной строке

Также вы можете просто ввести букву диска с двоеточием и таким образом перейти на другой диск:

Как перейти в папку или на другой диск в командной строке

Например, если вы находитесь на диске C и вам нужно перейти на диск D, то вы можете просто ввести команду «».

Как открыть командную строку сразу в нужной папке

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

Как перейти в папку или на другой диск в командной строке

После этого нужно удалить путь к папке, ввести команду «» и нажать на клавишу ввода.

Как перейти в папку или на другой диск в командной строке

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

Как перейти в папку или на другой диск в командной строке

Таким образом из папки можно запускать не только командную строку, но и другие консоли. Например, PowerShell или bash, если у вас установлен WSL. Данный способ работает в Windows 10 и Windows 11.

Создатель сайта comp-security.net, автор более 2000 статей о ремонте компьютеров, работе с программами, настройке операционных систем.

Задайте вопрос в комментариях под статьей или на странице
«Задать вопрос»
и вы обязательно получите ответ.

При запуске командной строки в Windows 10 по умолчанию открывается папка пользователя. Но, в большинстве случаев для работы она не подходит. Решить эту проблему можно двумя способами. Можно либо сразу открыть командную строку в нужной папке, либо перейти в эту папку позже. Оба этих варианта мы и рассмотрим в данной статье.

Запуск CMD из адресной строки в Проводника Windows 10

Если вам нужно открыть командную строку Windows 10 в определенной папке, то самый простой вариант, это выполнить команду «» в адресной строке в Проводника Windows 10. Делается это следующим образом: открываете любую папку, устанавливаете курсор в адресную строку, вместо адреса вводите команду «» и нажимаете на клавишу «».

Как перейти в папку или на другой диск в командной строке

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

Как перейти в папку или на другой диск в командной строке

Аналогичным образом можно открывать не только CMD, но и консоль PowerShell, только в этом случае в адресную строку нужно ввести команду «».

Переход в нужную папку с помощью команды CD

Альтернативный вариант – это использование команды «» (от англ. Change Directory) уже после открытия командной строки. Для этого нужно открыть командную строку любым удобным вам способом. Например, можете просто нажать Win-R и выполнить команду «».

Как перейти в папку или на другой диск в командной строке

После открытия командной строки нужно ввести команду «» и указать путь к папке. Например, если вы хотите открыть «», то вам нужно ввести «cd /d E:Games», как на скриншоте внизу.

Как перейти в папку или на другой диск в командной строке

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

Как перейти в папку или на другой диск в командной строке

Также нужно отметить, что при смене диска, вы можете сначала ввести букву диска (например, ) и перейти в его корень. И уже после этого открыть нужную папку с помощью команды «».

Как перейти в папку или на другой диск в командной строке

Для навигации по папкам в командной строке кроме команды «» вам также понадобится команда «». С ее помощью можно вывести содержимое текущего каталога прямо в консоль.

Как перейти в папку или на другой диск в командной строке

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

Команда WHERE – поиск файлов по шаблону имени.

Команда WHERE используется для определения расположения файлов в каталогах операционных систем Windows 7 и старше, имена которых соответствуют задаваемому шаблону поиска, а также, при необходимости – размера, даты и времени их изменения.
По умолчанию поиск выполняется в текущем каталоге и в каталогах,
определяемых значением переменной среды PATH.

Формат командной строки:

Параметры командной строки:

/R – Рекурсивный поиск и отображение файлов, соответствующих указанному шаблону, начиная с указанного каталога.

/Q – Возврат только кода выхода без отображения списка найденных файлов (тихий режим)

/F – Отображение имен найденных файлов в кавычках.

:/>  Инструкция по переносу закладок, Экспресс-панели, паролей и включению синхронизации между двумя компьютерами в Опере?

/T – Отображение размера, даты и времени изменения для всех найденных файлов.

шаблон – Шаблон поиска для искомых файлов.
В шаблоне можно использовать подстановочные знаки * и ?.
Также можно задавать конструкции “$пер:шаблон” и “путь:шаблон”,
где “пер” представляет переменную среды, и
поиск осуществляется по путям, указанным в переменной
среды “пер”. Эти конструкции не следует использовать
с параметром /R. При поиске к шаблону также
добавляются расширения из переменной PATHEXT. Пример:
WHERE “c:windows;c:windowssystem32:*.dll”

/? – Вывод справки по использованию.

WHERE.EXE возвращает код ошибки 0, если поиск был успешным, 1 – если безуспешным, и 2, если возникли ошибки.

Примеры использования команды WHERE.

WHERE /? – выдать краткую справку по использованию команды.

WHERE myfile.doc – найти расположение файла myfile.doc. Поиск выполняется в текущем каталоге и каталогах, имена которых задаются значением переменной PATH

WHERE /T myfile.doc – то же, что и в предыдущем случае, но в результатах поиска
отображается размер, дата и время изменения файла.

WHERE /R C: myfile.doc – найти расположение файла myfile.doc. Поиск выполняется рекурсивно, начиная с корневого каталога диска C: ( поиск по всему диску C: )

WHERE /R %windir%system32 *.log – поиск файлов с расширением log начиная с подкаталога system32 системного каталога Windows.

WHERE /R C: ???dir.* – поиск с использованием шаблона, где первые 3 символа имени файла могут быть любыми (???, следующие 3 символа принимают значение dir и с любым расширением.

where /R C:windowssystem32 *7*.exe – поиск исполняемых файлов, в имени которых содержится символ “7” , начиная с каталога C:windowssystem32

WHERE /R c:windows *.vbs *.cmd *.bat – поиск файлов сценариев ( скриптов ) – файлов с расширением vbs, cmd и bat начиная с каталога C:windows

WHERE /Q file1.ext – не отображать результат поиска. При выполнении этой команды
будет установлено значение переменной ERRORLEVEL в зависимости от результата поиска:

ERRORLEVEL=0 – файл file1.ext найден.

ERRORLEVEL=1 – файл file1.ext не найден.

ERRORLEVEL=2 – при поиске файла file1.ext возникла ошибка.

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

Как перейти в папку или на другой диск в командной строке

  • Описание
  • Синтаксис
  • Параметры
  • Примеры
  • Справочная информация

FIND – Поиск заданной строки текста в файле или нескольких файлах.

Описание

После поиска в заданных файлах команда find выведет на экран все строки из этих файлов, содержащие заданный образец.

Синтаксис

  • Если ключ /i не указан, команда find ищет именно то, что указано в параметре строка. Например, для команды find символы “a” и “A” являются различными. Если используется ключ /i, команда find не различает строчные и прописные буквы, и символы “a” и “A” являются одинаковыми.
  • Если строка поиска содержит кавычки, при вызове команды каждая кавычка в строке поиска должна быть заменена двумя символами кавычек (“СтрокаСодержания””Кавычки”).
  • Если имя файла пропущено, find действует как фильтр, получая ввод из стандартного источника вывода (обычно клавиатура, канал или файл перенаправления), и выводит все строки, содержащие параметр строка.
  • Параметры и ключи команды find могут быть заданы в произвольном порядке.
  • Подстановочные знаки (* и ?) не могут быть использованы в именах файлов и расширениях, задаваемых в команде find. Чтобы искать строку в множестве файлов, указанных с помощью подстановочных знаков, можно использовать команду find в команде for.
  • Если в одной команде заданы ключи /c и /v, команда find выведет на экран количество строк, которые не содержат заданную строку поиска. Если в одной команде указаны оба ключа: /c и /n, команда find игнорирует ключ /n.
  • Команда find не распознает символ перевода строки. Когда команда find используется для поиска текста в файле, который содержит символы перевода строки, необходимо ограничить строку поиска текстом, который может быть найден между символами перевода строки (строка не может прерываться символом перевода строки). Например, find не найдет совпадение для строки “файл налогов” если перевод строки в файле стоит между словами “файл” и “налогов”.

Для вывода всех строк из файла Pencil.ad, которые содержат слова “Точилка” служит следующая команда:

find “Точилка” pencil.ad

Для поиска строки, содержащей текст, указанный в кавычках, необходимо сначала заключить в кавычки всю строку. Во-вторых, необходимо использовать двойные кавычки для каждых кавычек, содержащихся в строке. Для поиска фразы “Точилка” (именно с ковычками в файле Pencil.ad:

find “”Точилка”” pencil.ad

Если поиск требуется провести в нескольких файлах, следует использовать команду find с командой for. Для поиска файлов с расширением .bat, содержащих строку “PROMPT”, можно использовать следующую команду:

for %f in (*.bat) do find “PROMPT” %f

Так как команда find проводит поиск, различая строчные и заглавные буквы, а команда dir выводит результаты заглавными буквами, необходимо задать строку “CPU” заглавными буквами или использовать ключ /i в команде find.

Справочная информация

Как перейти в папку или на другой диск в командной строке

Команда FIND – поиск строки символов в файле

FIND /? – выдать справку по использованию команды.

find /I myfile.txt “новость” – выполнить поиск строки новость без учета регистра символов в текстовом файле myfile.txt . По умолчанию, если не задан параметр /I
регистр символов учитывается.

find /C myfile.txt “новость” – отобразить общее количество строк, содержащих текст “новость”.

FIND /I %TEMP%*.tmp “windows” – выполнить поиск в каталоге временных файлов для всех файлов с расширением tmp строк , содержащих текст windows без учета регистра символов.

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

Соответственно, пример с поиском во временных файлах, приведенный выше, в ОС Windows XP ( значение переменной %TEMP% по умолчанию принимает путь с пробелами ) будет выполняться
верно при использовании следующей команды:

FIND /I “windows” < “%TEMP% extfile.tmp”

Естественно, шаблон имени файла *.tmp использовавшийся в примере выше, при перенаправлении ввода применять нельзя ( перенаправление можно выполнять
для конкретного файла – textfile.tmp в примере ) и для организации поиска текстовой строки в нескольких файлах можно воспользоваться циклической обработкой их содержимого , например, с помощью команды
FOR.

Применение команды FIND для поиска строки в результатах вывода другой программы используется, например,
для определения доступности сетевого узла с помощью команды PING . Утилита ping.exe не возвращает признак
доступности пингуемого адреса в значении переменной ERRORLEVEL (Ненулевое значение ERRORLEVEL утилита ping.exe формирует только в том случае, если заданы ошибочные параметры командной строки). Поэтому, для определения
доступности IP- адреса, используется анализ вывода ping.exe, который отличается для доступного и недоступного узла. Так, например, если пингуемый адрес доступен,
то в сообщении будет присутствовать значение TTL:

А в случае недоступности, строка символов “TTL” в выводимых результатах отсутствует. Если строка символов
“TTL” найдена, то FIND сформирует значение переменной ERRORLEVEL равным 0
Таким образом, для определения факта доступности узла в командном файле можно воспользоваться следующим
способом:

Команда ping используется в цепочке с командой find (конвейер ) и результаты ее вывода используются в качестве
ввода для поиска строки “TTL”. В конвейер добавлена команда перенаправления стандартного вывода на фиктивное устройство nul, т.е. подавление вывода. Ключ -n 1 задает однократный опрос узла COMPUTER для ping.exe.

Весь список команд CMD Windows

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

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

:/>  Обновление часовых поясов для Windows XP/2003/vista/7/2008 x86/x64

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

Для чтения содержимого каталогов в старой доброй командной строке предусмотрена команда , её то как раз мы и будем использовать. Итак, запускаем консоль CMD, командой (если нужно перейти в другой диск, добавляем после cd ключ /d) переходим в нужное расположение и выполняем эти две команды:

Как перейти в папку или на другой диск в командной строке

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

Как перейти в папку или на другой диск в командной строке

Если нужно получить список только файлов (без вложенных каталогов), достаточно использовать только ключ /b.

Примечание: в Windows 8.1 и 7 для быстрого перехода в папку в командной строке, зажмите Shift, кликните ПКМ по папке и выберите в контекстном меню опцию «Открыть окно команд».

Список файлов и папок в PowerShell

В Windows 10 командная строка заменена консолью , для получения списка файлов можете использовать её. Для примера выведем в файл содержимое папки Тест с её подкаталогами:

Как перейти в папку или на другой диск в командной строке

А можно и проще. Зажав Shift, кликаем по папке ПКМ, выбираем в меню «Открыть PowerShell здесь».

Как перейти в папку или на другой диск в командной строке

Как перейти в папку или на другой диск в командной строке

Необходимость использования параметра -Path с указанием пути в данном случае отпадает.

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

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

Как перейти в папку или на другой диск в командной строке

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

Получение списка файлов с помощью DirLister

Для получения хорошо структурированного списка объектов файловой системы можно воспользоваться бесплатной портативной утилитой DirLister, скачав её с официального сайта:

Запустив утилиту, укажите в разделе «Directory To Scan» путь к сканируемому каталогу или диску, в разделе «Output File» выберите расположение для сохранения списка.

Как перейти в папку или на другой диск в командной строке

Здесь же можно задать параметры сканирования — выбрать формат, указать, нужно ли включать в список вложенные директории и скрытые объекты, задать поиск по маске. После нажатия кнопки «Make List» список будет сохранён в выбранном расположении.

Используем для получения списка файлов браузер

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

Как перейти в папку или на другой диск в командной строке

Рекурсивно пройтись по всем вложенным каталогам, правда, не получится да и для копирования путей и имён файлов и переноса их в отдельный файл придется использовать Ctrl + C и Ctrl + V.

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

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

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

cp nginx.conf nginx.conf.copy

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

cp -r /docs /files

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

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

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

mv file.txt docs/new

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

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

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

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

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

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

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

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

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

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

touch file1.txt file2.txt file3.txt

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • Ubuntu и Debian:apt -y install nano
  • yum -y install nano

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

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

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

Чтение

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

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

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

head -n 3 example.txt

tail -n 3 example.txt

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

:/>  Как зайти в систему ОС Windows 10 от имени администратора, 3 способа

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

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

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

Удаление

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

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

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

rm -rf docs/photos

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

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

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

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

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

  • Настроить права на запуск файла для пользователей:chmod +x ./script.sh
  • Запустить скрипт. Если вы находитесь в той же директории, где лежит скрипт, достаточно вызвать его по имени: ./script.shВ некоторых случаях нужно использовать команду sh либо указать путь к исполняемому файлу командной оболочки:sh ./script.sh/bin/bash ./script.shЕсли вы находитесь в другой директории, для запуска нужно указать полный путь к скрипту.

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

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

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

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

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

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

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

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

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

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

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

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

find / -name “hello.txt”

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

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

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

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

Навигация

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

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

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

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

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

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

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

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

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

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

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

ls -al /etc

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

  • Ubuntu и Debian:apt -y install mc
  • yum -y install mc

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

Поиск в PowerShell

Для поиска объектов файловой системы в предусмотрен командлет с ключом Recurse.

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

Get-ChildItem -Path C: “log54.txt” -Recurse -Force -ErrorAction SilentlyContinue

Как перейти в папку или на другой диск в командной строке

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

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

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

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

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

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

mkdir docs pictures games

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

rmdir -p docs/photos

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

Оставьте комментарий