質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

5回答

8208閲覧

Linuxで特定の文字列から始まるファイルを検索したい

hidepon

総合スコア206

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2017/09/05 23:53

Linuxで特定の文字列から始まるファイルを検索したいのですが、
例えば「hoge」から始まりあとの文字は意識しない場合
find -name hoge*
としても検索されません。
どのようにすれば良いでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答5

0

ベストアンサー

find . -type f -name hoge*
としてみてはどうでしょうか

投稿2017/09/06 00:10

A.Ichi

総合スコア4070

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

otn

2017/09/06 01:40

何故これに低評価が??
A.Ichi

2017/09/06 02:32 編集

ファイルを検索したいとのことなのでtypeを入れたのが余分だったとか
hidepon

2017/09/06 02:48

ご返答有難うございます。すごく素敵な回答だと思いました。評価高くて良いと思うんですが・・・
t_obara

2017/09/06 02:50

検索するパス指定も含め、一番的確な回答だと思います。
keicha_hrs

2017/09/06 09:40

私が低評価を押したことになっていたのですが、閲覧したときに誤って押していたようです。申し訳ありません。
guest

0

ワイルドカードを使う場合、引用符でくくってください

投稿2017/09/05 23:56

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hidepon

2017/09/06 00:02

ご返答有難うございます。find -name "hoge*"ということですか?
退会済みユーザー

退会済みユーザー

2017/09/06 00:19

ですね
guest

0

ワイルドカードの展開は、findコマンド実行前になされます。
そのため、カレントディレクトリに、例えばhoge1というファイルかディレクトリがあった場合、
find -name hoge1と入力したのと同じ事になります。
これを防いで、hoge*の文字をそのままfindコマンドに渡すためには、引用符で囲むか、バックスラッシュでクォートします。
find -name "hoge*" find -name 'hoge*' find -name hoge\*
引用符で囲むのは*だけで十分なので、find -name hoge"*"でもいいです(あまり見ない書き方です)。

カレントディレクトリにもしhogeで始まるファイルやディレクトリがなかった場合は、ワイルドカードは展開されず、findコマンドにはそのままの文字列hoge*が渡りますので、期待通りの結果になります。

投稿2017/09/06 01:48

編集2017/09/06 01:50
otn

総合スコア84503

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

find -name "hoge*"

下記を参考にしてください。
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230777/

投稿2017/09/06 00:08

kasu813

総合スコア40

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ls | grep '^hoge'
ではどうでしょうか?
lsでファイル名を表示してその中からgrepで^hoge(先頭文字がhoge)になるものを出力しています。

投稿2017/09/06 00:05

kz23szk

総合スコア85

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問