![新しいプログラムをbinフォルダに移動しましたが、実行しようとすると何も起こりません。 [閉じる]](https://linux33.com/image/87441/%E6%96%B0%E3%81%97%E3%81%84%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%82%92bin%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%81%AB%E7%A7%BB%E5%8B%95%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%81%8C%E3%80%81%E5%AE%9F%E8%A1%8C%E3%81%97%E3%82%88%E3%81%86%E3%81%A8%E3%81%99%E3%82%8B%E3%81%A8%E4%BD%95%E3%82%82%E8%B5%B7%E3%81%93%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82%20%5B%E9%96%89%E3%81%98%E3%82%8B%5D.png)
~/bin
私のフォルダには、testとtest2という2つの同じファイルがあります。両方とも文字列を印刷します。 1つは動作しますが、もう1つは私が今日そこに置いたが動作しません。実際に何も起こらなかったので変だった。パスを更新する必要がありますか?この新しいプログラムを認識させるにはどうすればよいですか~/bin
?
(binディレクトリでも入力しようとしましたが、どこでも「test」と入力して実行しました。)
解決しました。これは「test」というプログラムの問題のようです。私はそれを「test3」にコピーして動作しました。実際、「テスト」以外の他のタスクはすべて機能します。
答え1
test
うまくいかないと思います。その理由は、テストがシェルに組み込まれているためです。走りましょう
$ type test2
> test2 is /home/user/bin/test2
$ type test
> test is a shell builtin
シェルtest
組み込みコマンドは条件のテストに使用されます。例:
if test "x" = "x"; then
echo yeah
fi
これ以上頻繁に使用されない理由は、次のように書くこともできます[
。
if [ "x" = "x" ]; then
echo yeah
fi