Effacer un fichier commençant par -

De Vulgum Techus
Version du 8 janvier 2013 à 18:00 par Admin2 (discuter | contributions)

(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)
Aller à : Navigation, rechercher

Mots clés

  • Effacer un fichier commençant par tiret
  • Effacer un fichier commençant par un caractère exotique

Présentation

La commande rm pour remove (enlever) efface les fichiers sous linux mais si ce dernier commence par un tiret, celui-ci sera interprété comme un argument et la commande sera mal interprétée voire pas interprétée du tout. Pour surmonter cette difficulté, il existe une solution très simple...

Procédure

La commande à utiliser est rm ./ ou rm --

Exemple rm ./ -fichier1 ou rm -- -fichier1

Il est aussi possible de passer par inode qui donne le numéro de tout fichier sous linux et ainsi de l'effacer.

Exemple ls -i fichier1 

qui affiche

NNNNNNN fichier1 (où NNNNNN est l'inode de fichier1)

La commande stat peut aussi être utilisée pour donner l'inode ainsi que les informations liées au fichier comme tailles, blocs, dates d'accès, etc.

Une fois l'inode connu il est alors possible d'effacer le dit fichier avec la commande

find . -inum [inode] -exec rm -i {} \; 

Cette méthode est d'ailleurs la seule permettant d'effacer sous Linux/Unix des fichiers dont le titre serait sous la forme 01/01/2013