компакт-диск (команда)
Разработчик(и) | AT&T Bell Laboratories , MetaComCo , Microsoft , IBM , DR , Novell , HP , JP Software , ReactOS участники |
---|---|
Операционная система | Unix , Unix-подобный , V , DOS , MSX-DOS , FlexOS , OS/2 , TRIPOS , Windows , MPE/iX , Plan 9 , Inferno , ReactOS , KolibriOS , SymbOS |
Платформа | Кросс-платформенный |
Тип | Команда |
The cd
команда, также известная как chdir
( изменить используемая каталог ) — командной строки, команда оболочки для изменения текущего рабочего каталога в различных операционных системах . Его можно использовать в сценариях оболочки и пакетных файлах .
Реализации
[ редактировать ]Команда реализована в таких операционных системах, как Unix , DOS , IBM OS/2 , [1] МетаКомКо ТРИПОС , [2] АмигаОС [3] пустой путь (где, если указан , подразумевается cd ), Microsoft Windows , ReactOS , [4] и Линукс . В MS-DOS он доступен в версии 2 и более поздних версиях. [5] DR DOS 6.0 также включает реализацию cd
и chdir
команды. [6] Команда также доступна в с открытым исходным кодом MS-DOS эмуляторе DOSBox и в оболочке EFI . [7] Он назван chdir
в HP MPE/iX . [8] Команда аналогична Stratus OpenVOS. change_current_dir
команда. [9]
cd
часто включается непосредственно в интерпретатор командной строки. Так обстоит дело в большинстве оболочек Unix ( Bourneshell , tcsh , bash и т. д.), cmd.exe
в Microsoft Windows NT / 2000 + и Windows PowerShell в Windows 7+ и COMMAND.COM
в DOS/Microsoft Windows 3.x – 9x / ME .
Системный вызов , который выполняет команду в большинстве операционных систем: chdir
это определено POSIX .
Оболочки командной строки в Windows обычно используют Windows API для изменения текущего рабочего каталога, тогда как в системах Unix cd
называет chdir()
POSIX C. Функция Это означает, что при выполнении команды не создается новый процесс для миграции в другой каталог, как в случае с другими командами, такими как ls . Вместо этого оболочка сама выполняет эту команду. Это связано с тем, что при нового процесса создании дочерний процесс наследует каталог, в котором был создан родительский процесс . Если cd
команда наследует каталог родительского процесса, то цель команды cd никогда не будет достигнута.
Windows PowerShell , объектно-ориентированная оболочка командной строки и язык сценариев Microsoft , выполняет cd
команда ( cmdlet ) в процессе оболочки. Однако, поскольку PowerShell основан на .NET Framework и имеет архитектуру, отличную от предыдущих оболочек, все командлеты PowerShell, такие как ls
, rm
и т. д. запускаться в процессе оболочки. Конечно, это не относится к устаревшим командам, которые по-прежнему выполняются в отдельном процессе.
Использование
[ редактировать ]Каталог используемый — это логический раздел файловой системы, для хранения файлов. Каталоги могут также содержать другие каталоги. cd
Команда может использоваться для перехода в подкаталог, возврата в родительский каталог, полного возврата в корневой каталог или перехода в любой заданный каталог.
пользователя Рассмотрим следующий подраздел файловой системы Unix, в котором показан домашний каталог (представленный как ~
) с файлом, text.txt
и три подкаталога.
Если текущий рабочий каталог пользователя является домашним каталогом ( ~
), затем введя команду ls
с последующим cd games
может создать следующую расшифровку:
user@wikipedia:~$ ls
workreports games encyclopedia text.txt
user@wikipedia:~$ cd games
user@wikipedia:~/games$
Теперь пользователь находится в каталоге «игры».
Аналогичный сеанс в DOS (хотя концепция «домашнего каталога» может не применяться, в зависимости от конкретной версии). [ нечеткий ] ) будет выглядеть так:
C:\> dir workreports <DIR> Wed Oct 9th 9:01 games <DIR> Tue Oct 8th 14:32 encyclopedia <DIR> Mon Oct 1st 10:05 text txt 1903 Thu Oct10th 12:43 C:\> cd games C:\games>
DOS поддерживает отдельные рабочие каталоги для каждого диска с буквой , а также имеет концепцию текущего рабочего диска. cd
Команда может использоваться для изменения рабочего каталога рабочего диска или другого диска с буквой. Ввод буквы диска в качестве команды сам по себе изменяет рабочий диск, например C:
; альтернативно, cd
с /d
Переключатель можно использовать для изменения рабочего диска и рабочего каталога этого диска за один шаг.
Современные версии Windows имитируют это поведение для обратной совместимости с CMD.EXE . [10]
Обратите внимание, что выполнение cd
из командной строки без аргументов имеет разные последствия в разных операционных системах. Например, если cd
выполняется без аргументов в DOS, OS/2 или Windows, текущий рабочий каталог (эквивалент Unix отображается pwd
). Если cd
выполняется без аргументов в Unix, пользователь возвращается в домашний каталог.
Выполнение cd
Команда внутри сценария или пакетного файла также имеет разные эффекты в разных операционных системах. В DOS текущий каталог вызывающего объекта может быть изменен непосредственно с пакетном файле помощью этой команды в . В Unix текущий каталог вызывающего объекта не изменяется при вызове сценария cd
команда. Это связано с тем, что в Unix сценарий обычно выполняется внутри подоболочки .
Параметры
[ редактировать ]Unix, Unix-подобный
[ редактировать ]cd
сам по себе илиcd ~
всегда будет помещать пользователя в его домашний каталог.cd .
оставит пользователя в том же каталоге, в котором он находится в данный момент (т.е. текущий каталог не изменится). Это может быть полезно, если внутренний код пользовательской оболочки не может справиться с воссоздаваемым каталогом, в котором он находится; бегcd .
поместит свою оболочку в воссозданный каталог.cd ~username
поместит пользователя в домашний каталог имени пользователя.cd dir
(без/
) поместит пользователя в подкаталог; например, если они находятся в/usr
, печатаюcd bin
поставлю их/usr/bin
, покаcd /bin
помещает их в/bin
.cd ..
переместит пользователя на один каталог вверх. Итак, если они/usr/bin/tmp
,cd ..
перемещает их в/usr/bin
, покаcd ../..
перемещает их в/usr
(т.е. вверх на два уровня). Пользователь также может использовать эту косвенность для доступа к подкаталогам. Итак, из/usr/bin/tmp
, они могут использоватьcd ../../local
пойти в/usr/local
cd -
переключит пользователя на предыдущий каталог. Например, если они находятся в/usr/bin/tmp
, и перейдите в/etc
, они могут печататьcd -
вернуться в/usr/bin/tmp
. Пользователь может использовать это для переключения между двумя каталогами без pushd и popd .
ДОС, ОС/2, Windows, РеактОС
[ редактировать ]- никакие атрибуты не печатают полный путь к текущему каталогу.
-p
Распечатайте окончательный стек каталогов, как и dirs.-n
Записи переносятся до того, как достигнут края экрана.-v
записи печатаются по одной в строке, после чего указывается их позиция в стеке.cd\
(Только для DOS и Windows) возвращается в корневой каталог. Следовательно, командаcd\subdir
всегда переносит пользователя в указанный подкаталог корневого каталога , независимо от того, где он находится в момент выполнения команды.
Интерпретаторы, отличные от оболочки операционной системы
[ редактировать ]В File Transfer Protocol соответствующая команда пишется CWD
в потоке управления, но доступен как cd
в большинстве клиентских программ командной строки. Некоторые клиенты также имеют lcd
изменения рабочего каталога для локального .
Среды численных вычислений MATLAB и GNU Octave включают в себя cd
функция с аналогичным функционалом. [11] [12] Команда также относится к интерпретаторам командной строки различного другого прикладного программного обеспечения.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Справка JaTomes – Команды OS/2» . www.jatomes.com . Архивировано из оригинала 14 апреля 2019 г. Проверено 11 августа 2019 г.
- ^ «Введение в Tripos» (PDF) . Проверено 1 мая 2020 г.
- ^ Рюгхаймер, Ханнес; Спаник, Кристиан (1 мая 1988 г.). Краткий справочник по AmigaDOS . Гранд-Рапидс, Мичиган: Абакус. ISBN 9781557550491 – через Интернет-архив.
- ^ «Реактос/реактос» . Гитхаб . 3 января 2022 г.
- ^ Вулвертон, Ван (2003). Работает MS-DOS версии 6.22 (20-е юбилейное издание), 6-е исправленное издание . Майкрософт Пресс . ISBN 0-7356-1812-7 .
- ^ «Руководство пользователя DR DOS 6.0, советы по оптимизации и настройке» (PDF) . Архивировано из оригинала (PDF) 30 сентября 2019 г. Проверено 13 августа 2019 г.
- ^ «Оболочки EFI и сценарии» . Интел . Проверено 25 сентября 2013 г.
- ^ «Справочное руководство по командам MPE/iX» (PDF) . Архивировано из оригинала (PDF) 21 октября 2018 г. Проверено 21 октября 2018 г.
- ^ «Справочное руководство по командам OpenVOS» (PDF) . stratadoc.stratus.com . Проверено 12 сентября 2020 г.
- ^ «11 октября 2010 года» . Старая новая вещь .
- ^ «Изменить текущую папку – компакт-диск MATLAB» . www.mathworks.com .
- ^ «Ссылка на функцию: cd» . Octave.sourceforge.io .
Дальнейшее чтение
[ редактировать ]- Вулвертон, Ван (1990). Команды MS-DOS: Краткий справочник Microsoft, 4-е исправленное издание . Майкрософт Пресс . ISBN 978-1-55615-289-4 .
- Джон Пол Мюллер (2007). Администрирование Windows из командной строки для Windows Vista, Windows 2003, Windows XP и Windows 2000 . Джон Уайли и сыновья . ISBN 978-0-470-16579-9 .
- Барретт, Дэниел Дж. (2012). Карманное руководство по терминалу Macintosh: возьмите на себя управление своим Mac . О'Рейли . ISBN 978-1-4493-2898-6 .
Внешние ссылки
[ редактировать ]- Windows XP > Справочник по командной строке AZ > Chdir (Cd) от Microsoft TechNet
- Единая спецификация UNIX , Версия 4 от The Open Group : изменить рабочий каталог – Справочник по командной строке и утилитам,