• [^] # Re: c'est quoi pour toi "wipe"

    Posté par . En réponse au message supprimer avec wipe des fichiers sur SSD. Évalué à 1. Dernière modification le 04 avril 2018 à 16:42.

    J'ai réussi a forger une commande qui reçoit (en 1ドル) le path du fichier et renvoie 1 s'il est sur HDD ou 0 s'il est sur SSD (ou rien si erreur il me semble):

    cat /sys/block/$( df -P 1ドル | grep -Eo "^/[a-Z]{3}/[a-Z]{1,}" | sed -e "s/\/dev\///g" )/queue/rotational
    

    Mais je n'arrive pas à l'insérer dans ma condition (bash est capricieux) :

     if hash wipe 2>/dev/null; then
     echo "wipe installed"
     if [ </sys/block/$( df -P 1ドル | grep -Eo "^/[a-Z]{3}/[a-Z]{1,}" | sed -e "s/\/dev\///g" )/queue/rotational -gt 0 ]; then
     echo "HDD, use wipe"
     #wipe -f -S r -s 1ドル/*
     else
     echo "SSD, use rm"
     #rm 1ドル/*
     fi
     else
     echo "wipe is not installed, use rm"
     #rm 1ドル/*
     fi

    ==> renvoie [: -gt : opérateur unaire attendu

    Et si je remplace

    if [ </sys/block/$( df -P 1ドル | grep -Eo "^/[a-Z]{3}/[a-Z]{1,}" | sed -e "s/\/dev\///g" )/queue/rotational -gt 0 ]; then
    

    par

    if [ cat /sys/block/$( df -P 1ドル | grep -Eo "^/[a-Z]{3}/[a-Z]{1,}" | sed -e "s/\/dev\///g" )/queue/rotational -gt 0 ]; then
    

    ==> [: trop d'arguments