ls / grepのみを使用して長さが8文字で拡張子のないファイルを1行に一覧表示するにはどうすればよいですか?

ls / grepのみを使用して長さが8文字で拡張子のないファイルを1行に一覧表示するにはどうすればよいですか?

拡張子なしで8文字の名前を持つすべてのファイルを一覧表示しようとしています。

私の問題は、「.」が途中にある「test.txt」ファイルから始まります。

私はlsを実行し、出力をファイルにリダイレクトし、grepを使用して必要なファイルを取得しようとしましたが、知りたいです。

ls/grep/redirection/extglobsなどを使用して1行でこれを実行できますか?

ベストアンサー1

grepを使用すると、以下を除く8文字を一致させることができます.

 $ ls | grep '^[^.]\{8\}$'

またはパイプに問題がある場合:

 $ find . -regex '.*/[^.][^.][^.][^.][^.][^.][^.][^.]'

または多くのシェルで簡単に:

 $ ls -d [^.][^.][^.][^.][^.][^.][^.][^.]

おすすめ記事