回答:
次のようなものを試してください:
find "$(cd ..; pwd)" -name "filename"
$(cd ..; pwd)
。ここで私が得る...それはOKに動作しますが、私はターミナルで一人でそれを行う場合、私は親ディレクトリを得ることができない「バッシュを<DIR>:ディレクトリがあり、私がしなければ。$(cd ..; echo "something")
私が手に」何か:ありませんコマンド」
(cd ..; pwd)
( ... )
はサブシェルで実行することを意味し、出力はstdoutに書き込まれます。$( ... )
「コマンド置換」の略です。後者は、変数展開のように使用できます。
bash
のTilde Expansionを使用して現在の作業ディレクトリの絶対パスを取得できます。これによりfind
、結果の絶対パスも出力されます。
find ~+ -type f -name "filename"
で実行された場合~/Desktop
、これは
find /home/yourusername/Desktop -type f -name "filename"
次のような結果を出力します。
/home/yourusername/Desktop/filename
現在の作業ディレクトリの親ディレクトリでこのアプローチを使用する場合は、cd
呼び出す前に必要がありますfind
。
cd .. && find ~+ -type f -name "filename"
最も簡単な方法は
find "$(pwd -P)" -name "filename"
find `pwd -P` -name "filename"
また、PWDを使用すると、完全なディレクトリを表示できます。Pwdは、ファイル名の展開のように、現在のディレクトリをすべて表示します。これが役に立てば幸いです。
これは私にとってはうまくいきましたが、最初の発生のみを返します。
realpath $(find . -type f -name filename -print -quit)
すべてのオカレンスのフルパスを取得するには(Sergiy Kolodyazhnyyが提案したとおり)
find . -type f -name filename | xargs realpath