UNIX Shell Command
UNIXとDOS/Vの違い
- コマンドインタプリタ(シェル shell)を通して常にコマンドが
処理される.
- 大文字、小文字の区別をする.
コマンドの形式は DOS/V と同じである.
コマンド名 {引数}*
コマンドは、コマンド名があって、0個以上の引数が続く.引数の間は、
1個以上の空白で区切られる.
制御文字
Ctrl+D |
controlキ−を「押したまま」キ−「d」を叩く.この場合は,標準ファイルの EOF を表す.
|
---|
Ctrl+H | 1文字削除.設定によってはBSキ−(back space)で1文字削除.
|
---|
Ctrl+C | 現在実行中のプロセスを中断してシェルのトップレベルに戻る.
設定によっては、deleteキ−がこれに割り当てられている.
|
---|
主なコマンド
- 現在どこにいるか知る pwd
- ホ−ムディレクトリ(ログインした時、最初に位置する場所)に戻る cd
- 場所を移動する cd
例:
cd /usr/local/bin 絶対パスで指示された場所に移動.
cd ../ 一つ上に移動.
cd test 直下に testというディレクトリがあり、そこに移動
- ファイルをコピ−する cp
例:
cp m.c m.c.bak ファイルm.c をファイルm.c.bak にコピ−
cp m.c old/m.c.bak ファイルm.c をディレクトリold の下に
m.c.bak という名前でコピ−
cp -r test old ディレクトリtest 以下「すべて」を新しい
ディレクトリold に移す.
- ファイル名を変える mv
例:
mv contest1 contest2 ファイルcontes1 をファイルcontest2 に変更
- ファイルを削除する rm
例:
rm test1.c test2.c ファイルtest1.c test2.c を削除
rm odl/*.c ディレクトリold の下にあって、拡張子 c を
持つファイルをすべて削除. 「*」の使い方は後述.
- ディレクトリを作る mkdir
例:
mkdir A B ディレクトリAとB を新たに作成.
- ディレクトリ名を変える mv
例:
mv old new ディレクトリold がnewに変わる.もともとoldの下に
あったものは、そっくりnew に引き継がれる.
- ディレクトリを削除 rmdir
例:
rmdir work ディレクトリworkを削除.ただし、ディレクトリの
直下に何もファイルがないことが前提.ある場合は
以下のコマンドを使う.
rm -r work ディレクトリworkを含め、直下のファイルを
すべて削除.極めて危険なコマンド.気をつけて.
- ファイル名一覧を表示 ls
例:
ls 直下のファイルをすべて表示.
(注意) 表示で最後に「*」がついたものは、そのファイルが実行可能
ファイルであることを表し、最後に「/」がついたものはディ
レクトリであることを表す.
さらに注意を加えると、ファイル名をコマンドの引数に与える
時、「*,/」を除いた部分がファイル名となる.
ls -l 直下のファイルすべてに関し、本人/グル−プ/他人それぞれに
対する書き込み/読みだし/実行の権限の有無を知らせる.
その他、ファイルサイズ、作成日付等が情報として得られる.
正規表現
シェルの機能として、ファイル名に対しいくつかの省略形が使える.上記コマンド
の説明中で、いくつか例を見ている.
* 0個以上にマッチ
+ 1個以上にマッチ
? 1個にマッチ
例) ls *.c 拡張子「c」を持つファイルすべてを表示
mv [a-z]*.c old 小文字の英字で始まり、拡張子「c」を持つファイル
すべてをディレクトリoldの下に移す.
ls Z*.? 2で始まる名前を持ち、拡張子が1文字の
ファイルをすべて表示.
印刷
% a2ps a.c | lp -d lp12 ファイルa.cを印刷.プリンタ名lp12
request id is lp12-7349 (1 file(s))
%lpstat 印刷待ち確認
lp12-7349 contest 13815 Jul 26 21:31 on lp12
% cancel lp12-7349 印刷の中止
|