私の.txtファイルには次の行が含まれています。
1a
1aa
2a
2aa
「a」側に対して1つの特定のタスクを実行し、「aa」側に対して別の特定のタスクを実行したいと思います。より正確で明確に言えば、当事者「a」に対して私が実行する作業は、当事者「aa」に適用しないでください。になります。
たとえば、
- 「aa」側ではディレクトリに移動したい
- 「a」側の場合は、複数のディレクトリに移動したいと思います。
私のスクリプトでこれをどのように実行できますか?
ベストアンサー1
grep -xE '[0-9]+a'
x
Grepsは、10以上の10進数の後に10進数を含む行のみを検索しますa
。
grep -xE '[0-9]+aa'
aa
.
-E
ある拡張正規表現必須+
。デフォルトの正規表現を有効または無効にすることで、-x
次のことができます。
grep '^[0-9]\{1,\}a$'
^
$
行の先頭と末尾でそれぞれ一致し、\{1,\}
BREはEREと同じです+
(一部のgrep
実装ではこれをサポートし、\+
いつでも使用できます[0-9][0-9]*
)。