Você poderia fazer algo assim:
for i in $(cat /proc/partitions | grep -v "[0-9]$\|name" | awk '{ print $4 }'); do hdparm -tT /dev/"$i"; done
Isso percorre o /proc/partitions e recupera os nomes dos dispositivos antes de passar esses valores para hdparm , que deve ser executado em dispositivos, não em partições (por exemplo, / dev / sda não / dev / sda1).
Conforme escrito, o comando acima também funcionará nos discos rígidos existentes, bem como nos dispositivos USB. Para excluí-los, modifique a parte grep -v . O comando acima exibirá todas as linhas que não terminam em digit ou contêm a palavra name .
Por exemplo, se você tem dois discos rígidos que deseja excluir ( /dev/sda e /dev/sdb ), o comando acima pode ser alterado para:
for i in $(cat /proc/partitions | grep -v "[ab0-9]$\|name" | awk '{ print $4 }'); do hdparm -tT /dev/"$i"; done