chdir

Материал из свободной русской энциклопедии «Традиция»
Перейти к навигации Перейти к поиску

cd, также доступная как chdir (англ. change directory переводится как изменить каталог), эта команда командной строки используется для изменения текущего рабочего каталога в Unix, DOS и других операционных системах. Она также доступна для использования в скриптах командного интерпретатора или в DOS пакетных файлах. cd часто встроена в оболочки, такие как Bourne shell, csh, tcsh, bash (где вызывается Си функция POSIX chdir()) и в DOS COMMAND.COM.

Использование[править | править код]

Каталог как логическая секция файловой системы используется для содержания файлов. Каталоги могут также содержать и другие каталоги. Команда cd можеть быть использована для перехода во вложенные каталоги (подкаталоги), перехода обратно в родительский каталог, перехода в корневой каталог (/ в UNIX, \ в DOS) или для перехода в любой другой каталог.

Предположим некоторые последующие подкаталоги из файловой системы Unix, которые расположены в домашнем каталоге пользователя (обозначенного как «~») с файлом («text.txt») и тремя подкаталогами.

Пользовательский вид файловой системы Unix-like систем начинающейся с домашнего каталога (часто обозначаемого ~). Данные три каталога могут содержать другие подкаталоги и/или файлы.


Если текущий пользовательский рабочий каталоги — это домашний («~»), тогда ввод команды «ls» с последующим «cd games» может привести к следующему:

  me@host:~$ ls
  workreports games encyclopedia text.txt
  me@host:~$ cd games
  me@host:games$

Рабочий каталог изменится на «~/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>

Заметим, что cd даёт различный эффект в разных операционных системах, если её использовать без аргументов. Например, если выполнить без аргументов в DOS, будет показан полный путь к текущему рабочему каталогу, а если в Unix, то осуществится переход в домашний каталог. Эффект от команды cd в различных скриптах или пакетах также варьируется. Например, в DOS может напрямую изменить рабочий каталог из пакетного файла посредством команды, а в UNIX вызовом в скрипте cd, как правило, не меняет рабочий каталог пользователя (как следствие передачи управления в UNIX скриптах отдельной оболочке с собственным адресным пространством)

Другие упоминания[править | править код]

chdir() (или CHDIR(), в некоторых случаях регистрозависимо) также может быть одной из функций изменения каталога в языках программирования, например Perl, стандартных библиотеках Си, Visual Basic и т. д.

См. также[править | править код]