そのため、ユーザー名が161で始まり、隣に3桁の数字を持つ最後にログインした人だけを取得する単純なgrepコマンドを作成しました。
last | grep "^161[0-9]{3}"
ただし、リストにこれらのユーザー名が含まれていても何も印刷されません。さらに奇妙なことは、grepの代わりにegrepを使用することです。
last | egrep "^161[0-9]{3}"
このコマンドは有効です。
違いが何であるかを説明できる人はいますか?
答え1
Steeldriverがすでに指摘したように、デフォルトの正規grep
表現を使用し、grep -E
拡張egrep
正規表現を使用します。
last | grep '^161[0-9]\{3\}'
last | egrep '^161[0-9]{3}'