GNU/Linux >> Linux の 問題 >  >> Linux

大文字と小文字を区別しないパターンをLと一致させる方法は?

大文字と小文字を区別せずに、特定のパターンに一致するすべてのファイルを一覧表示したいと思います。

たとえば、次のコマンドを実行します。

ls *abc*

のように、大文字と小文字を区別せずに、ファイル名の一部に「abc」が含まれるすべてのファイルを表示したい
-rw-r--r-- 1 mtk mtk 0 Sep 21 08:12 file1abc.txt
-rw-r--r-- 1 mtk mtk 0 Sep 21 08:12 file2ABC.txt

ケースのマニュアルページを検索しましたが、何も見つかりませんでした。

承認された回答:

これは実際にはlsではなく、シェルによって行われます。 。

bashで 、使用します:

shopt -s nocaseglob

そしてそして コマンドを実行します。

またはzsh

unsetopt CASE_GLOB

またはyash:

set +o case-glob

そしてあなたのコマンド。

あなたはそれを.bashrcに入れたいかもしれません 、.zshrc または.yashrc それぞれ。

または、zshを使用します:

setopt extendedglob
ls -d -- (#i)*abc*

(つまり、ワイルドカードごとに大文字と小文字を区別しないグロビング)

ksh93の場合:

ls -d -- ~(i:*abc*)

グロビングが必要 lsではなく、異なる動作をする 、これらはすべてlsに渡されるファイルであるため シェルによって。


Linux
  1. libvirtでVagrantを使用する方法

  2. Linuxでgocryptfsを使用してファイルを暗号化する方法

  3. 複数のパターンでGrepを実行する方法は?

  1. Linuxシェルスクリプトでファイル内の単語を変更する方法

  2. ヘッダーを使用して ps 出力を grep する方法

  3. 一部のユーザーのパスワードを使用した SSH ログインを無効にする方法は?

  1. EmacsでLaTeXドキュメントを作成する方法

  2. ddを使用してFFでファイルをパディングする方法は?

  3. Linuxでパスワードを確認するには?