現在のディレクトリでプログラムを実行するときに「./」が必要なのはなぜですか? [コピー]

現在のディレクトリでプログラムを実行するときに「./」が必要なのはなぜですか? [コピー]

重複の可能性:
ファイルを実行するために「./」を使用するのはなぜですか?

これは不要に見え、しばらくすると迷惑になります。これを変更する方法はありますか?そうでなければ、誰かがその理由を説明できますか?

ありがとうございます!

答え1

現在のディレクトリがパスにあり、以前にパスに指定されたディレクトリに同じ名前の別の実行可能ファイルがない場合は、必要ありません。これらの条件のどれも真でない場合、./は事実上「ここを見てください」を意味します。

パスに "."を追加できますが、システムコマンド名と一致する実行可能ファイルを含むディレクトリでコマンドを実行すると、予期しない(または悪意のある)結果が生じる可能性があるため、お勧めできません。

答え2

現在のディレクトリがパスにない場合は、これを行います。ルートまたはsudoerとしてログインしている場合は、現在のディレクトリをパスに追加しないことをお勧めします。我慢してください。

必要に応じてというディレクトリを作成できますbin。次に、このディレクトリを検索パスに追加します。これは一般的な管理スクリプトを置くのに最適な場所です。

答え3

sh yourprogram.shorを使ってプログラムを実行するよりもはるかに簡単ではありませんかpython yourprogram.py

関連情報