web-dev-qa-db-ja.com

Bash:行末に末尾にスペースがあるファイルを検索します

各行の終わりに末尾にスペースがあるファイルを見つけるためのbashコマンドを探しています。スペースを削除するのではなく、ファイルを見つけることに興味があります。

19
ziiweb

末尾にスペースがあるファイルを検索します。

find . -type f -exec egrep -l " +$" {} \;
31
pizza

目標が1行以上の末尾に空白があるファイルを一覧表示することである場合:

grep -r '[[:blank:]]$' .

行を印刷せず、ファイル名のみを印刷するには、-lオプションも指定します。これは、Word lのようにlistであり、番号1ではありません。

13
Acumenus

末尾にスペース文字が1つ以上あるファイルを検索します。

find . -name "*" | xargs egrep ".* +$"
1
matcheek

どこにも一致が含まれていないファイルを一覧表示するオプションがあります。それと、行末の直前のスペース以外の文字の正規表現を使用します。

grep -L '[^ ]$' *

ディレクトリを再帰的に使用するには、-rを追加します。他の空白文字も検索するには、正規表現に文字クラス$'[^ \t]$'またはPOSIX'[^[:blank:]]$'を使用します。

1
tripleee

目標がファイルの一覧表示 with 末尾の空白 in 現在のパス

grep -rli '[[:blank:]]$' .
1
class

ack (または ag )の使用:

ack -l ' \n'

注:他のいくつかの回答と同様に、これには、末尾にスペースが含まれる1つ以上行を含むファイルが一覧表示されます。

1
friederbluemle

これを試して :

find . -type f -name "* "
0
user10914363

質問が文字通りすべての行の終わりに空白があるファイルを見つけることである場合、これは機能するはずです:

grep -rL '[^[:blank:]]$' .

-Lgrepに、パターンに一致しないすべてのファイルを報告するように指示し、パターンは改行の直前に空白がない行を探します。

0
twalberg