2017-05-21 14 views
0

私はそれを疑っていました。前n番目のディレクトリからgrepする方法はありますか?例えば 、のは、私はそれでgrepコマンドを持つスクリプトを、持って言わせては、指定されたパスの下に座っている:n番目の親ディレクトリを含むgrepファイルへの一般的な方法

/home/usr/project/utilities/wheremyscriptsits/myscript.sh 

私はこのパスからの私はgrepの手続きを開始したい:

/home/usr/project 

です明示的にパスを指定せずにこれを行う方法はありますか?例: 親レベルの機能のようなmaxdepth。

ありがとうございます。

+0

申し訳ありませんが、私が 'myscript.sh'を実行した場合、grepに何を返そうと思いますか? –

+0

/home/usr/projectにあるファイルからgrep "bugSet"を目指しています。 私はこのようなアプローチから始めると思います。 'echo $ {PWD%/ */*}' – Elesmoth

+0

パスをハードコーディングしないのはなぜですか?なぜあなたのスクリプトは必ずファイル階層内にあるべきですか? – odradek

答えて

0

あなたの質問は非常に明確ではありませんが、私は、あなたを理解していれば、このようなものは、bashのと、ほとんどの場合のために動作します:

myDir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" 
startDir="$(cd "$myDir/../.." && pwd)" 
find "$startDir" -type f -exec grep whatever {} + 

は、詳細はhttp://mywiki.wooledge.org/BashFAQ/028を参照してください。

関連する問題