chdir

From Традиция
Jump to navigation Jump to search

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

Использование[edit | edit source]

Каталог как логическая секция файловой системы используется для содержания файлов. Каталоги могут также содержать и другие каталоги. Команда 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 скриптах отдельной оболочке с собственным адресным пространством)

Другие упоминания[edit | edit source]

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

См. также[edit | edit source]