Effacer un fichier commençant par - : Différence entre versions
(5 révisions intermédiaires par un utilisateur sont masquées) | |||
Ligne 1 : | Ligne 1 : | ||
− | '''[[Lien court]]''' vers cette page : | + | <!-- Links checked 29/10/18 --> |
− | '''[[QR code]]''' vers cette page : | + | [[Catégorie:Linux]] |
− | + | '''[[Lien court]]''' vers cette page : https://vt.cx/Efct | |
+ | '''[[QR code]]''' vers cette page : https://vt.cx/Efct.qr | ||
<html> | <html> | ||
<script type="text/javascript"><!-- | <script type="text/javascript"><!-- | ||
Ligne 12 : | Ligne 13 : | ||
</script> | </script> | ||
<script type="text/javascript" | <script type="text/javascript" | ||
− | src=" | + | src="//pagead2.googlesyndication.com/pagead/show_ads.js"> |
</script> | </script> | ||
</html> | </html> | ||
− | |||
− | = Mots clés = | + | = Mots-clés = |
− | * Effacer un fichier commençant par tiret | + | * [[Effacer un fichier commençant par tiret]] |
− | * Effacer un fichier commençant par un caractère exotique | + | * [[Effacer un fichier commençant par un caractère exotique]] |
= Présentation = | = Présentation = | ||
− | La commande '''rm''' pour '''remove''' (enlever) efface les fichiers sous '''[[ | + | 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 = | = Procédure = | ||
− | La commande à utiliser est '''rm ./''' ou '''rm --''' | + | La commande à utiliser est '''[[rm ]]./''' ou '''[[rm]] --''' |
− | Exemple rm ./ -fichier1 ou rm -- -fichier1 | + | Exemple [[rm]] ./ -fichier1 ou [[rm]] -- -fichier1 |
Un seconde méthode consiste à faire défiler les fichiers à effacer et à confirmer par {{K|Y}} celui à effacer et N ceux à laisser | Un seconde méthode consiste à faire défiler les fichiers à effacer et à confirmer par {{K|Y}} celui à effacer et N ceux à laisser | ||
Exemple rm -i * (interruption du listing des fichiers à tout moment par {{K|Ctrl}} + {{K|C}}) | Exemple rm -i * (interruption du listing des fichiers à tout moment par {{K|Ctrl}} + {{K|C}}) | ||
− | Il est aussi possible de passer par '''inode''' qui donne le numéro de tout fichier sous '''[[ | + | Il est aussi possible de passer par '''inode''' qui donne le numéro de tout fichier sous '''[[Linux]]''' et permet donc, a posteriori, de l'effacer. |
Exemple ls -i fichier1 | Exemple ls -i fichier1 | ||
qui affiche | qui affiche | ||
Ligne 36 : | Ligne 36 : | ||
<br/> | <br/> | ||
Une fois l''''inode''' connu il est alors possible d'effacer le dit fichier avec la commande : | Une fois l''''inode''' connu il est alors possible d'effacer le dit fichier avec la commande : | ||
− | find . -inum [inode] -exec rm -i {} \; | + | find . -inum [inode] -exec [[rm]] -i {} \; |
Cette méthode est '''<span style="color: #FF0000;">à utiliser avec extrême prudence</span>''' et il est prudent de l'essayer dans un environnement de test et non dans un environnement de production. | Cette méthode est '''<span style="color: #FF0000;">à utiliser avec extrême prudence</span>''' et il est prudent de l'essayer dans un environnement de test et non dans un environnement de production. | ||
Version actuelle en date du 30 octobre 2018 à 21:31
Lien court vers cette page : https://vt.cx/Efct QR code vers cette page : https://vt.cx/Efct.qr
Mots-clés
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
Un seconde méthode consiste à faire défiler les fichiers à effacer et à confirmer par Y celui à effacer et N ceux à laisser
Exemple rm -i * (interruption du listing des fichiers à tout moment par Ctrl + C)
Il est aussi possible de passer par inode qui donne le numéro de tout fichier sous Linux et permet donc, a posteriori, 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 à utiliser avec extrême prudence et il est prudent de l'essayer dans un environnement de test et non dans un environnement de production.