'\" te .\" Copyright 1989 AT&T .\" Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved. .\" Portions Copyright (c) 1992, X/Open Company Limited All Rights Reserved .\" Portions Copyright (c) 1982-2007 AT&T Knowledge Ventures .\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for permission to reproduce portions of its copyrighted documentation. Original documentation from The Open Group can be obtained online at http://www.opengroup.org/bookstore/. .\" The Institute of Electrical and Electronics Engineers and The Open Group, have given us permission to reprint portions of their documentation. In the following statement, the phrase "this text" refers to portions of the system documentation. Portions of this text are reprinted and reproduced in electronic form in the Sun OS Reference Manual, from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between these versions and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html. This notice shall appear on any product containing this material. .TH cd 1 "2011 年 7 月 12 日" "SunOS 5.11" "ユーザーコマンド" .SH 名前 cd, chdir, pushd, popd, dirs \- 現在の作業用ディレクトリの変更 .SH 形式 .LP .nf \fB/usr/bin/cd\fR [\fIdirectory\fR] .fi .SS "sh" .LP .nf \fBcd\fR [\fIargument\fR] .fi .LP .nf \fBchdir\fR [\fIargument\fR] .fi .SS "csh" .LP .nf \fBcd\fR [\fIdir\fR] .fi .LP .nf \fBchdir\fR [\fIdir\fR] .fi .LP .nf \fBpushd\fR [\fB+\fR\fIn\fR | \fIdir\fR] .fi .LP .nf \fBpopd\fR [\fB+\fR\fIn\fR] .fi .LP .nf \fBdirs\fR [\fB-l\fR] .fi .SS "ksh88、ksh" .LP .nf \fBcd\fR [\fB-L\fR] [\fB-P\fR] [\fIarg\fR] .fi .LP .nf \fBcd\fR \fIold\fR \fInew\fR .fi .SH 機能説明 .SS "/usr/bin/cd" .sp .LP \fB/usr/bin/cd\fR ユーティリティーは、\fBcd\fR ユーティリティー自身だけの現在のディレクトリを変更します。これは、後述するシェル組み込みの cd とは対照的です。\fB/usr/bin/cd\fR はプロセスの呼び出しには影響しませんが、あるディレクトリを現在のディレクトリとして設定できるかどうかを決定するのに使用できます。 .SS "sh" .sp .LP Bourne シェルに組み込まれている \fBcd\fR は、現在のディレクトリを \fIargument\fR で指定されたディレクトリに変更します。シェルパラメータ \fBHOME\fR は、\fIargument\fR のデフォルト値です。シェルパラメータ \fBCDPATH\fR は、\fIargument\fR を含むディレクトリの検索パスを定義します。2 つのディレクトリ名は、コロン (\fB:\fR) で区切ります。デフォルトのパスは空の文字列です (現在のディレクトリの指定)。\fB\fR現在のディレクトリは空のパス名で指定します。このパス名は、等号の直後か、パスリスト内にある区切り文字のコロンの間に指定します。\fIargument\fR の先頭文字が \fB/\fR、\fB\&.\fR、\fB\&. .\fR の場合、検索パスは使用しません。それ以外の場合は、パス中の各ディレクトリで \fIargument\fR を検索します。\fBcd\fR は、\fIargument\fR 中で実行 (検索) 権を持っていなければなりません。コマンドを実行するたびに新しいプロセスが生成されるため、\fBcd\fR を通常のコマンドとして実装した場合は効率が悪くなります。そのため、cd コマンドは、シェルに組み込まれています。(\fBpwd\fR(1)、\fBsh\fR(1)、\fBchdir\fR(2) を参照) .sp .LP \fBchdir\fR は、\fBcd\fR を呼び出すもうひとつの方法です。 .SS "csh" .sp .LP \fIdir\fR 引数を指定しない場合、 C シェルに組み込まれている \fBcd\fR は、シェル変数 \fBHOME\fR の値を新たな作業用ディレクトリとして使用します。\fIdir\fR を指定した場合、それが \fB/\fR、\fB\&.\fR、または \fB\&. .\fR で始まる完全なパス名であれば、その \fIdir\fR が新たな作業ディレクトリとなります。それ以外の場合は、シェル変数 \fBCDPATH\fR が指定するパスと相対関係を持つディレクトリの中から該当するものを探し出します。\fB\fR\fBCDPATH\fR の構文は \fBPATH\fR シェル変数と同一で、セマンティクスも似ています。\fBcd\fR は \fIdir\fR に対する実行 (検索) 権を持っていなければなりません。コマンドを実行するたびに新しいプロセスが生成されるため、\fBcd\fR を通常のコマンドとして実装した場合は、効率が悪くなります。そのため、cd コマンドは、C シェルに組み込まれています。(\fBpwd\fR(1)、\fBsh\fR(1)、\fBchdir\fR(2) を参照) .sp .LP \fBchdir\fR はシェルの作業用ディレクトリを \fIdir\fR が示すディレクトリに変更します。引数を指定しないと、そのユーザーのホームディレクトリに変更します。\fIdir\fR が現在のディレクトリには見つからない相対パス名の場合、変数 \fBcdpath\fR 内のディレクトリリストを検索します。\fIdir\fR が \fB/\fR で始まる値を持つシェル変数の名前である場合、その変数の値が示すディレクトリに変更します。 .sp .LP \fBpushd\fR はディレクトリスタックにディレクトリをプッシュ (押し込む) します。引数を指定しないと、トップの 2 つの構成要素を交換します。 .sp .ne 2 .mk .na \fB\fB+\fR\fIn\fR \fR .ad .RS 7n .rt \fIn\fR 番目のエントリとトップスタックを交換しそれに \fBcd\fR します。 .RE .sp .ne 2 .mk .na \fB\fIdir\fR\fR .ad .RS 7n .rt 現在の作業用ディレクトリをスタックにプッシュし、\fIdir\fR を新たな作業用ディレクトリとします。 .RE .sp .LP \fBpopd\fR はディレクトリスタックからポップして (取り出して)、新たに先頭となったディレクトリへ \fBcd\fR します。ディレクトリスタックの構成要素は、トップディレクトリを 0 として番号付けられます。 .sp .ne 2 .mk .na \fB\fB+\fR\fIn\fR \fR .ad .RS 7n .rt スタック内の \fIn\fR 番目のエントリを破棄します。 .RE .sp .LP \fBdirs\fR はディレクトリスタックを出力します。現在のディレクトリが最も左に現れるように時間順に出力されます。\fB-l\fR 引数を指定すると、\fB~\fR を使った省略形ではなく、完全な形式で出力されます。 .SS "ksh88、ksh" .sp .LP Korn シェルに組み込まれた \fBcd\fR コマンドは、前述の 2 つの形式のいずれかで入力します。第 1 の形式は、現在のディレクトリを \fIarg\fR に変更します。\fIarg\fR が \fB–\fR の場合、ディレクトリを直前のディレクトリに変更します。シェル変数 \fBHOME\fR の値がデフォルトの \fIarg\fR になります。\fBPWD\fR 環境変数は、現在のディレクトリに設定されます。\fBPWD\fR が変更された場合、\fBOLDPWD\fR 環境変数も古い作業用ディレクトリに変更されます。つまり、\fBcd\fR を呼び出す直前における現在の作業用ディレクトリのことです。シェル変数 \fBCDPATH\fR は、\fIarg\fR を含むディレクトリの検索パスを定義します。2 つのディレクトリ名は、コロン (\fB:\fR) で区切ります。デフォルトのパスは空の文字列です (現在のディレクトリの指定)。\fB\fR現在のディレクトリは空のパス名で指定します。このパス名は、等号の直後か、パスリスト内にある区切り文字のコロンの間に指定します。\fIarg \fR の先頭文字が \fB/\fR、\fB\&.\fR、または \fB\&. .\fR の場合、検索パスは使用しません。それ以外の場合は、パス中の各ディレクトリで \fIarg\fR を検索します。成功しなかった場合、\fBcd\fR は、PWD の値、スラッシュ文字、および arg を連結したパス名のディレクトリへ変更しようとします。 .sp .ne 2 .mk .na \fB\fB-L\fR\fR .ad .RS 6n .rt オペランドのドットドット (\fB\&..\fR) を論理的に処理します。ドットドット部分が処理される前に、シンボリックリンク部分は解釈処理されません。\fB\fR .RE .sp .ne 2 .mk .na \fB\fB-P\fR\fR .ad .RS 6n .rt オペランドのドットドット (..) を物理的に処理します。ドットドット部分が処理される前に、シンボリックリンク部分は解釈処理されます。\fB\fR .RE .sp .LP \fB-L\fR と \fB-P\fR の両方のオプションを指定した場合、最後に呼び出された方のオプションが使用され、他方のオプションは無視されます。\fB-L\fR オプションと \fB-P\fR オプションをどちらも指定しない場合、オペランドのドットドット (..) は論理的に処理されます。 .sp .LP \fBcd\fR の第 2 の形式は、\fBPWD\fR 中の現在のディレクトリ名における \fIold\fR という文字列を \fInew\fR という文字列に置換し、この新規のディレクトリへ変更しようとします。 .sp .LP \fBcd\fR コマンドは \fBrksh\fR では実行できません。コマンドを実行するたびに新しいプロセスが生成されるため、\fBcd\fR を通常のコマンドとして実装した場合は、効率が悪くなります。そのため、cd コマンドは、ksh に組み込まれています。(\fBpwd\fR(1)、\fBsh\fR(1)、\fBchdir\fR(2) を参照) .SH オペランド .sp .LP 次のオペランドがサポートされています。 .sp .ne 2 .mk .na \fB\fIdirectory\fR\fR .ad .RS 13n .rt 新たな作業用ディレクトリとなるディレクトリの絶対または相対パス名。\fBcd\fR が相対パス名をどのように解釈するかは、環境変数 \fBCDPATH\fR の設定により異なります。 .RE .SH 出力 .sp .LP \fBCDPATH\fR に設定されている空でないディレクトリ名が用いられる場合、新たな作業用ディレクトリの絶対パス名が以下のような形式で標準出力に出力されます。 .sp .LP \fB"%s\n"\fR, <\fInew directory\fR> .sp .LP それ以外の場合には、何も出力されません。 .SH 環境 .sp .LP \fBcd\fR の実行に影響を与える次の環境変数についての詳細は、\fBenviron\fR(5) を参照してください。\fBLANG\fR、\fBLC_ALL\fR、\fBLC_CTYPE\fR、\fBLC_MESSAGES\fR、および \fBNLSPATH\fR。 .sp .ne 2 .mk .na \fB\fBCDPATH\fR\fR .ad .RS 10n .rt コロンで区切られた、ディレクトリを示すパス名のリスト。\fIdirectory\fR オペランドの先頭文字がスラッシュ \fB(\fR\fB/\fR\fB)\fR でなく、先頭部分がドットでもドットドットでもない場合には、\fBcd\fR はこのリスト内のパス名を順番に検索し、環境変数 \fBCDPATH\fR に指定されている名前のディレクトリから \fIdirectory\fR を探します。その結果、最初に見つかったディレクトリ名が新たな作業用ディレクトリとなります。ディレクトリのパス名として空の文字列を指定すると、それは現在のディレクトリと見なされます。\fBCDPATH\fR は、設定されていないときには空の文字列として扱われます。 .RE .sp .ne 2 .mk .na \fB\fBHOME\fR\fR .ad .RS 10n .rt \fIdirectory\fR オペランドが省略されたときに用いるホームディレクトリの名前 .RE .sp .ne 2 .mk .na \fB\fBOLDPWD\fR\fR .ad .RS 10n .rt 直前の作業用ディレクトリのパス名。この変数は、\fBcd-\fR で使用されます。 .RE .sp .ne 2 .mk .na \fB\fBPWD\fR\fR .ad .RS 10n .rt 現在の作業用ディレクトリのパス名。この変数は、そのディレクトリに移った後に \fBcd\fR により設定されます。 .RE .SH 終了ステータス .sp .LP \fBcd\fR により、次の終了値が返されます。 .sp .ne 2 .mk .na \fB\fB0\fR\fR .ad .RS 6n .rt ディレクトリが正常に変更されました。 .RE .sp .ne 2 .mk .na \fB>\fB0\fR\fR .ad .RS 6n .rt エラーが発生した。 .RE .SH 属性 .sp .LP 属性についての詳細は、マニュアルページの \fBattributes\fR(5) を参照してください。 .SS "csh、ksh88、sh" .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性タイプ属性値 _ 使用条件system/core-os _ インタフェースの安定性確実 _ 標準T{ \fBstandards\fR(5) を参照してください。 T} .TE .SS "ksh" .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性タイプ属性値 _ 使用条件system/core-os _ インタフェースの安定性不確実 .TE .SH 関連項目 .sp .LP \fBcsh\fR(1), \fBksh\fR(1), \fBksh88\fR(1), \fBpwd\fR(1), \fBsh\fR(1), \fBchdir\fR(2), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)