"httpd -d ./inst2 -k start"というコマンドを実行してApache Serverを起動すると、このコマンドラインは "ps -ef | grep httpd" 。私の質問は、絶対パスがわからない場合、 "./inst2"の絶対パスを取得する方法はありますか? ls -l /proc/PID/cwd
:コマンドラインで相対パスから絶対パスを取得する方法
おかげ
"httpd -d ./inst2 -k start"というコマンドを実行してApache Serverを起動すると、このコマンドラインは "ps -ef | grep httpd" 。私の質問は、絶対パスがわからない場合、 "./inst2"の絶対パスを取得する方法はありますか? ls -l /proc/PID/cwd
:コマンドラインで相対パスから絶対パスを取得する方法
おかげ
あなたは絶対パスがPID
がps
出力から判断することができる擬似シンボリックリンク/proc/PID/cwd
を調べることである何GUESSに試すことができます。しかし、は現在の作業ディレクトリであり、あなたのパスは他のディレクトリに対して解決されるかもしれないことに注意してください。だから、それはちょうど推測ですです。
プログラムがこの相対パスを使用していくつかのファイルを開き、実際にこのようなファイルの完全パスを特定する必要がある場合は、/proc/PID/fd
疑似ディレクトリ:ls -l /proc/PID/fd
を使用して現在開いているファイルを列挙できます。しかし、もちろん、ファイルはすでにls
の実行時までに閉じることができます。開いているファイルが別の場所に移動した場合、そのファイルが何を表示するのか分かりません。
ファイル/ディレクトリの絶対パスを取得する場合でも、linuxで次のコマンドを実行することができます。
この任意のファイルやディレクトリの絶対パスを与えることができます。 ファイルが自宅にない場合は、コマンドの前にsudoを使用し、$ HOMEを/に置き換えてください。
スタックオーバーフローは、プログラミングおよび開発の質問のサイトです。この質問は、プログラミングや開発に関するものではないので、話題にはならないようです。ヘルプセンターの[ここではどのトピックを参照できますか](http://stackoverflow.com/help/on-topic)を参照してください。おそらく、[スーパーユーザ](http://superuser.com/)や[Unix&Linux Stack Exchange](http://unix.stackexchange.com/)の方が良いかもしれません。 – jww