Linux Tips

testというシェルスクリプトを作ったがうまく動作しない

北浦訓行
2001/4/12

 シェルスクリプトの勉強などで、試しに作ったコマンドにtestなどという適当な名前を付けることはよくある。ところが、Linuxにはtestという名前のコマンドがあるので、作成したコマンドが動作しない(実は、testというコマンドのほかに、シェルの内部コマンドにもtestがある)ということが起こりうる。

 コマンドが存在するかどうかは、typeコマンドなどで調べてみるといいだろう。

$ type test
test is a shell builtin

 ちなみに、testというコマンドはファイル形式のチェックや値の比較を行う。外部コマンドのtestを使う場合には、以下のコマンドを実行して、内部コマンドのtestを無効にする。

$ enable -n test
$ test -version
test (GNU sh-utils) 2.0
作者 FIXME: ksb and mjb.

Copyright (C) 1999 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[参考訳]
これはフリー・ソフトウェアです。コピーの条件についてはソースをお読みください。
市場性および特定目的適合性のいかんによらず、いかなる保証もありません。

 逆に、無効にした内部コマンドを有効にするには、-nオプションを付けずにenableコマンドを実行すればいい。

$ enable test
$ test --version

Linux Tips Index


 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間