ファイル名内の連続しない複数の文字を見つける方法

ファイル名内の連続しない複数の文字を見つける方法

hello、help、helol、llala、lalala、hi という名前のファイルがあるディレクトリがあります。名前に少なくとも 2 つの l が含まれるファイルのみをリストできるようにする必要がありますが、これらの l は連続してはなりません (連続していない別の l がある場合を除く)。したがって、helol、llala、lalala のみをリストする必要があります。

答え1

globパターンを使用する:

*l[^l]*l*
  • [^l]を除く任意の文字に一致しますl

  • *0文字以上の文字に一致します

  • lリテラルに一致するl

例:

$ ls
hello  helol  help  hi  lalala  llala

$ ls *l[^l]*l*
helol  lalala  llala

関連情報