別のディレクトリにあるファイルパスを印刷する方法

別のディレクトリにあるファイルパスを印刷する方法

ファイルがあれば印刷しますone.txt~/Documentscd ~/Documentsrealpath one.txt

~/Documents/one.txt

しかし、別のディレクトリにあるファイルのパスを印刷するにはどうすればよいですか?たとえば、cd a/bディレクトリにファイルがあり、それをコマンドに渡して絶対パスを印刷するにはどうすればよいですか?two.txta2/b2two.txttwo.txt

realpath two.txt他のディレクトリで同様のことをしたいと思います。

ベストアンサー1

realpath現在のディレクトリへの相対パスを指定してください。

$ pwd
/home/myself/local/build/shell-toolbox
$ realpath ../../../.profile
/home/myself/.profile

ファイルがどこにあるかを尋ねないと、GNUrealpathユーティリティは私のファイルを見つけることができないか、ファイルの絶対パスを生成できません。.profileあなたの場合は、名前付きファイルがいくつかある可能性があるため、two.txtファイルrealpathに絶対パス名を指定するには、少なくとも現在のディレクトリへの相対パスを指定する必要があります。

Unixファイルシステムでは、ファイルは次のように一意に識別されます。パス名(相対的または絶対的)。 ㅏファイル名現在ディレクトリにあるファイルの1つ以外のファイルを一意に識別することはできません。

two.txtホームディレクトリまたはその下で呼び出されるすべての一般ファイルを見つけて相対パス名を取得するには、次の手順を実行します$HOME

find "$HOME" -type f -name two.txt

おすすめ記事