さまざまなプラットフォーム用に Go を使用してプログラムをコンパイルし、相対パスまたはその名前 (PATH 変数にある場合) を呼び出して実行します。
実行可能ファイルがどこにあるかを見つけることは可能ですか?
たとえば、私のプログラムは " foo
( .exe
)" と呼ばれます。(PATH にある場合)./foo
を実行できます。foo
../../subdir/subdir/foo
私は使用しようとしましたがos.Args[0]
、プログラム名に「foo」以外の何かが含まれているかどうかを確認する必要があると思います。はいの場合は を使用しfilepath.Abs
、いいえの場合は を使用します (関数名が見つかりません。PATH を調べてプログラムの場所を確認する関数があります)。