プロが教える店舗&オフィスのセキュリティ対策術

ファイル・フォルダ名に「ab」を含むものを("."で始まる隠しファイル含む)ls/ll/findで検索したい場合どうすればいいでしょうか?(下記のllコマンド結果は全て一致対象にしたい。)
~ $ ll -a
.abc abcdef oreab fkaoabljl .reeraborie

A 回答 (2件)

find /hoge -name "*ab*" -print


では駄目なんでしょうか?

あ、find の使い方は一応 man して確かめてください。
    • good
    • 0

まず。


ls * などとしたときの * は、シェルによって、展開されて、該当するファイル名に置き換えられたあと、lsが実行します。
例えば
ls *ab*
は、シェルが展開して
ls abcdef oreab fkaoabljl
という状態で実行されます。

なので、どういう展開があるかは、お使いのシェルのマニュアルをよく読んで調べてください。
* で任意の文字列、とかはほぼ共通ですが、シェルによっては複雑なものに対応しているものもあります(zshとか)


一般的なものだと
*ab*
で、(. では始まらないもので) ab を含む、となります。
.*ab*
で、 .で始まり、abを含む、となります。
両方指定することができます。


find の -name は、 .で始まるかどうかは関係なくファイル名の比較をします。
find はいろいろと動作が細かいので、マニュアルや参考書で一通り確認しましょう。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!