プログラムを実行するコマンドを入力すると、プログラム名の前に ./ が自動的に挿入されるのはなぜですか?

王林
リリース: 2024-02-09 19:45:12
転載
855 人が閲覧しました

プログラムを実行するコマンドを入力すると、プログラム名の前に ./ が自動的に挿入されるのはなぜですか?

コマンド ラインを使用してプログラムを実行すると、プログラム名の前に 2 つの文字「./」が自動的に挿入されることに気づくかもしれません。これは、Unix および Linux システムでは、「./」が現在のディレクトリを表すためです。コマンドを入力してプログラムを実行すると、システムはまず現在のディレクトリでプログラムの実行可能ファイルを検索します。 「./」を追加しない場合、システムは、環境変数 PATH で指定されたパスにあるシステムまたはプログラムに付属のコマンドを実行するとみなします。したがって、現在のディレクトリ内のプログラムが確実に実行されるようにするには、プログラム名の前に「./」を追加する必要があります。これは、コマンド ラインのセキュリティと一貫性を確保するシステムのデフォルトの動作です。

質問内容

たとえば、

リーリー

コマンドを入力するときに、inigo./inigo に自動的に変換しないのはなぜですか?

解決策

必要なもの

リーリー

.パス に含まれておらず、含めるべきではないためです。 . は現在のディレクトリを参照するだけです。

質問タグが示すように、bash を使用していると仮定すると、この代替手段

リーリー

は、inigo への他の相対パスまたは絶対パスと同様に機能します。

###編集###

あるいは、

$pwd

path に追加することもできます。これには、上記のいずれかを入力する必要がなく、 を追加する必要がないという利点があります。 セキュリティリスク。

inigo

を含むディレクトリにいると仮定すると、 リーリー 次に、「

」と入力します。 リーリー ###どこからでも。

以上がプログラムを実行するコマンドを入力すると、プログラム名の前に ./ が自動的に挿入されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!