Questo
ls -l /var/log | awk '{print $9}' | grep "^[a-z]*\.log."
genera questo:
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
ma questo:
ls -l /var/log | awk '{print $9}' | grep "^[a-z]+\.log."
non genera nulla.
Perché? Ho appena cambiato *
in +
. Non è simile? L'operatore ha +
solo bisogno di almeno una partita e *
zero o più.