Étiquette : tiret

28 juin 2015 /

Quand vous tombez sur un fichier commençant  par un tiret, si vous vous voulez le déplacer, le renommer ou le supprimer, il vous est impossible de le faire car celui-ci sera considérer comme une option.

Voici trois façon de contourner le problème:

Avec — devant le fichier:

mv -- -fichier

Par le numéro d’inode:

ls -i

find  . -inum "n° d'inode'" -exec mv {} nouveau_nom \;

Avec ./ devant le fichier:

mv ./--help toto

14 juin 2015 /

Le signe « – » n’est pas en lui-même un opérateur lorsqu’un nom de fichier est attendu, c’est plutôt une option reconnue par certains Unix et Linux. Cela écrit dans la sortie standard (stdout) ou lit dans l’entrée standard (stdin), comme par exemple tar ou cat, mais il y en a d’autre

Voici un exemple avec cat:

echo "salut" | cat -

Cela affichera:

salut

Voici un exemple avec tar:

tar -cvf - /home/starmate | ssh sauvegarde@sauvegarde.home "cat > sauvegarde.tar"

Ici tar va envoyer la création de l’archive dans la sortie standard, qui sera pipée ( | ) via SSH sur le serveur « sauvegarde.home ». Puis son affichage via cat sera redirigé dans un fichier sauvegarde.tar dans le répertoire personnel de l’utilisateur local « sauvegarde ».

Un  » –  » redirige donc la sortie vers stdout ou accepte une entrée de stdin, plutôt qu’un fichier.
Cette méthode est utilisé principalement lorsque l’on juge utile de manipuler des fichiers à travers des tubes.