'\" te .\" Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved. .\" Copyright 1989 AT&T .\" Portions Copyright (c) 1982-2007 AT&T Knowledge Ventures .TH shift 1 "2011 年 7 月 12 日" "SunOS 5.11" "ユーザーコマンド" .SH 名前 shift \- シェルの引数のリスト、またはフィールドで区切られた単語をずらすためのシェル組み込み関数 .SH 形式 .SS "sh" .LP .nf \fBshift\fR [\fIn\fR] .fi .SS "csh" .LP .nf \fBshift\fR [\fIvariable\fR] .fi .SS "ksh88" .LP .nf \fB* shift\fR [\fIn\fR] .fi .SS "ksh88" .LP .nf \fB+shift\fR [\fIn\fR] .fi .SH 機能説明 .SS "sh" .sp .LP \fB$\fR\fIn\fR\fB+1\fR . . .から始まる一連の定位置パラメータを、次の名前に変更します。\fB$1\fR . . . と同じになります。\fIn\fR を指定しない場合、 1 と見なされます。 .SS "csh" .sp .LP \fIargv\fR のコンポーネント (または \fIvariable\fR が指定されればその変数のコンポーネント) を、 左へずらして最初のコンポーネントを切り捨てます。未設定の変数および NULL 値に対してはエラーとなります。 .SS "ksh88" .sp .LP \fB$\fR\fIn\fR\fB+1\fR \fB$\fR\fIn\fR\fB+1 . . .\fR の定位置パラメータを \fB $1 . . .\fR という名前に変更します。\fIn\fR のデフォルト値は 1 です。パラメータ \fIn\fR に指定できる値は、評価結果が \fB$#\fR 以下の負でない数になる算術式です。 .sp .LP このマニュアルページでは、1 つまたは 2 つのアスタリスク (*) が先頭に付加されている \fBksh88\fR(1) コマンドは、次の方法で特殊な処理を受けます。 .RS +4 .TP 1. コマンドが完了しても、コマンドの直前の変数代入リストは依然として有効です。 .RE .RS +4 .TP 2. \fB入出力のリダイレクトは変数代入後に行われます。\fR .RE .RS +4 .TP 3. エラーが発生すると、それを含むスクリプトは中止されます。 .RE .RS +4 .TP 4. 変数代入形式で、** から始まるコマンドに続くワードは、変数代入と同一の規則で展開されます。つまり、チルド置換は \fB=\fR 符号のあとに実行され、ワード分割とファイル名生成は実行されません。 .RE .SS "ksh" .sp .LP \fBshift\fR は、定位置パラメータを \fIn\fR または \fB1\fR (\fIn\fR を省略した場合) で定義された桁数ずつ左にシフトする特別な組み込みシェルです。残りの定位置パラメータの数は、シフトされる桁数だけ削減されます。 .sp .LP \fIn\fR を指定した場合は、シフトする桁数を決定する算術式として評価されます。定位置パラメータの数よりも大きくシフトしたり、負の桁数をシフトしたりすると、エラーが発生します。 .sp .LP \fBksh\fR の \fBshift\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 .sp .LP このマニュアルページでは、1 つまたは 2 つの \fB+\fR (プラス符号) が先頭に付加されている \fBksh\fR(1) コマンドは、次のような特殊な処理を受けます。 .RS +4 .TP 1. コマンドが完了しても、コマンドの直前の変数代入リストは依然として有効です。 .RE .RS +4 .TP 2. \fB入出力のリダイレクトは変数代入後に行われます。\fR .RE .RS +4 .TP 3. エラーが発生すると、それを含むスクリプトは中止されます。 .RE .RS +4 .TP 4. これらは有効な関数名ではありません。 .RE .RS +4 .TP 5. 変数代入形式で、\fB++\fR を先頭に持つコマンドに続くワードは、変数代入と同一の規則で展開されます。つまり、チルド置換は \fB=\fR 符号のあとに実行され、フィールド分割とファイル名生成は実行されません。 .RE .SH 属性 .sp .LP 属性についての詳細は、マニュアルページの \fBattributes\fR(5) を参照してください。 .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), \fBsh\fR(1), \fBattributes\fR(5)