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

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

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

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

Команда «cd» (или ее полный вариант – «chdir») в командной строке используется для открытия папок или, если обобщить, – для перемещения по каталогам диска. Чтобы переместиться в требуемую папку на текущем диске, вы должны написать cd *путь к папке*. Пример – cd “C:\Program Files\Example Folder\”.

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

Вообще, в пути могут быть как прямые слэши («/»), так и обратные («\») – командная строка читает их одинаково – используйте, как вам удобно. Может разве что по привычке до прямого слэша дотягиваться легче при стандартной раскладке клавиатуры, чем до обратного. Кстати, если вы хотите создать свою собственную раскладку клавиатуры, что читайте эту статью.

Вернемся к делу. Если вам нужно сменить диск, предположим, с «C» на «W», то вы должны добавить параметр «/d» (не забывайте про него!) после команды, но до набора пути, например, вот так: cd /d “W:\Example Folder” – кстати говоря, вот и практический пример использования параметров (или по-другому – ключей). Если вы хотите перейти именно в корень диска, то не забудьте помимо его буквы написать двоеточие : (и слэш, если хотите).

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

Также можно набирать не абсолютные пути к каталогу, а относительные. Предположим, вы находитесь в C:\Program Files и вам нужно попасть в папку «Example Folder». Тогда вы можете написать просто cd “Example Folder” вместо cd “C:\Program Files\Example Folder”.

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

Для просмотра содержимого конкретных папок используется команда «dir». Ее синтаксис таков: dir *путь к папке* *параметры*. Стоит отметить, что у данной команды очень много параметров, при помощи которых можно выводить определенные группы файлов и проводить их сортировку – так что обязательно пользуйтесь командой «help» и директивой «/?» помощи по командам (полностью – dir /?).

Если набрать dir без указания пути к папке, то будет выведен список файлов и папок текущего каталога, то есть того, в котором вы находитесь. Без указания параметров выведется список из пяти столбцов: в первом показывается дата последнего изменения каталога, во втором – его дата, в третьем дается указание на то, является ли элемент списка папкой (если там стоит «DIR», то – да. В противном случае столбец элемента будет пуст), в четвертом показывается вес файла, в пятом дается название файла или папки. В конце списка даются сведения о количестве и совокупном весе файлов и папок в каталоге.

Очень удобно использовать команду «dir» с атрибутом «/d» – тогда просто выводится список файлов и папок без детализации.

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

Для создания папок в командной строке используется команда «mkdir» или ее сокращенный по названию вариант «md» (то есть между «mkdir» и «md» нет разницы). Итак, чтобы создать папку вы должны, вы должны прописать путь до нее и тут же написать ее название. Например, вы находитесь в корне диска «C» и хотите создать папку «Example folder» в папке «Test», тогда вы пишете mkdir “C:\Test\Example folder”.

Не забывайте, что можно использовать как абсолютные, так и относительные пути. В приведенном примере можно написать также и просто mkdir “Test\Example folder”, а если вы изначально находитесь в папке «Test», то можно написать mkdir “Example Folder” – результат во всех случаях будет тот же. Также помните, что путь к директории нужно брать в кавычки, а в кавычках уже можно использовать и прямые («/»), и обратные («\») слэши.

При наборе команды можно создавать и несколько папок: для этого вы просто через пробел указываете пути (если нужно) и названия папок (то есть команда принимает произвольное число аргументов). Во все той же папке «Test» создадим папки с названиями «1», «2» и «3». Если вы находитесь в корне диска «C», то создать папки можно так – mkdir “test\1” “test\2” “test\3”, – а если в самой папке «Test», то так – mkdir “1” “2” “3”. Помните также, что если путь не содержит пробелов, то в угоду времени в кавычки его заворачивать необязательно (что, собственно, и сделано на скриншоте).

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

При помощи команды «rmdir» и ее сокращенного варианта «rd» можно удалять папки и их содержимое. Синтаксис команды «rmdir»: rmdir *параметры* *путь к папке*. Предположим, есть пустой каталог «Test», лежащий в корне диска «C». Чтобы удалить его, следует написать rmdir “C:\Test”.

Если вы хотите удалить непустую папку, в которой лежат другие папки и/или файлы, то команду нужно прописать с ключом «/s». Напомним, что ключ прописывается сразу после команды, но до записи ее аргументов (в нашем случае под аргументом подразумевается путь до папки и ее название). Удалим всю ту же папку «Test», но которая теперь не является пустой. Для этого напишем rmdir /s “C:\Test”. Появится запрос на подтверждение удаления: «y» («yes») – положительный ответ, «n» («no»), соответственно – отрицательный. Мы пишем y.

Чтобы постоянно не отвечать на данный запрос, можно написать еще один ключ – «/q» (это, к слову, может пригодится при написании bat-файлов). В нашем случае это может выглядеть так – rmdir /s /q “C:\Test”.

По аналогии с командой «mkdir» можно перечислить через пробел те папки, которые необходимо удалить. Предположим, во все той же папке «Test» у нас лежат папки с именами «1», «2» и «3». Чтобы их удалить за одну команду, пропишем rmdir /s /q “C:\Test\1” “C:\Test\2” “C:\Test\3”. Если вы уже находитесь в папке «Test», то проще можно написать rmdir /s /q 1 2 3 (опять же без кавычек, потому что в путях нет пробелов).

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

Как это ни странно, для переименования и перемещения папок (и файлов) используется одна-единственная команда «move». Ее синтаксис таков: move *параметры* *путь до папки/файла* *новый путь*. Логика команды в случае с папками примерно следующая:

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

Приведем, соответственно, два примера.

Предположим, что мы хотим переместить папку «Example folder», которая лежит в каталоге C:\Test, в корневую директорию диска «C». Чтобы это сделать, в командной строке нужно написать move “C:\Test\Example folder” “C:\”.

Теперь предположим, что мы хотим переименовать всю ту же папку «Example folder» в папку с названием «New example folder». Для этого пропишем move “C:\Test\Example folder” “New example folder”. Технически, как вы, наверное, успели заметить, мы делаем все то же перемещение, но только внутри той же самой директории, где находится искомая папка.

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

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

Формально, скопировать папку с ее содержимым в командной строке нельзя. Однако существует команда «xcopy», которая позволяет копировать содержимое папок, чем мы и воспользуемся. Синтаксис команды «xcopy» следующий: xcopy *параметры* *путь до папки* *путь до нового каталога*.

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

Допустим, у нас есть папка «Example folder», лежащая в C:\Test, которая содержит файлы и подкаталоги с файлами и которую нам необходимо переместить в корень диска «C». Если мы напишем xcopy “C:\Test\Example folder” “C:\Example folder”, то у нас не скопируются внутренние каталоги папки «Example folder». Чтобы их скопировать, нужно прописать ключ «/e» сразу после команды «xcopy»: xcopy /e “C:\Test\Example folder” “C:\Example folder”. Командная строка может спросить, чем является введенный путь: файлом или папкой. Мы нажимаем D, так как перемещаем папку.