web-dev-qa-db-ja.com

サーバー上の特定の名前のフォルダーを見つける方法

サーバー上のどこかに「exampledocs」という名前のディレクトリがあります。私はそれを使用して場所を見つけようとしました:

ls -d */ | grep -E 'exampledocs'

そして

find * -regextype posix-extended \-regex 'exampledocs' \-type d

そして

grep "exampledocs" * --recursive

何も機能しませんでした。コマンドラインからこれを行うにはどうすればよいですか? Ubuntu Server 11.0を使用しています。

49
JakeRow123
find / -xdev 2>/dev/null -name "exampledocs" 

注:これはDebianのものですが、動作するはずです。

48
Guy Coder

これも動作するはずです

find folder_full_path -name exampledocs -type d
59
Noam Peled

locate exampledocs | grep /exampledocs$

1
Chapo

bashglobstarシェルオプションと[[評価を使用すると、再帰的なグロビングとプレフィックスの削除を使用して、必要な文字列を含むディレクトリを見つけることができます。 binフォルダーを検索する方法は次のとおりです。

bash-4.3$ shopt -s globstar
bash-4.3$ for f in ./**/* ; do [ -d "$f" ] && [[ "${f##*/}" =~ ^bin$ ]] && echo "$f" ; done
./bin
./Desktop/TODAY/bin
0