この
ls -l /var/log | awk '{print $9}' | grep "^[a-z]*\.log."
これを出力します:
alternatives.log.1
alternatives.log.10.gz
alternatives.log.2.gz
alternatives.log.3.gz
alternatives.log.4.gz
alternatives.log.5.gz
alternatives.log.6.gz
alternatives.log.7.gz
alternatives.log.8.gz
alternatives.log.9.gz
apport.log.1
apport.log.2.gz
apport.log.3.gz
でもこれは:
ls -l /var/log | awk '{print $9}' | grep "^[a-z]+\.log."
何も出力しません。
どうして?に変更*
しました+
。似てない?演算子+
には、少なくとも1つの一致が必要で、*
ゼロ以上が必要です。