2 votes

Linux script cp changeant le nom du fichier

J'essaie de créer une sorte de poubelle de recyclage. J'ai une fonction de suppression qui envoie le fichier sélectionné dans la corbeille de recyclage et ajoute au fichier l'emplacement du répertoire dans lequel il était stocké. Le problème est que lorsque j'obtiens l'emplacement à partir du script en utilisant tail. Bien que le script fonctionne, il renomme le fichier en tail. Quelqu'un pourrait-il expliquer pourquoi le cp renomme le fichier ? Voici un extrait de l'endroit où je pense que le problème se trouve :

destination=(tail $1 -n 1)
cp ~/Recycling/$1 $destination 
rm ~/Recycling/$1

Merci

2voto

perreal Points 47912

Vous avez besoin d'un $ avant la parenthèse :

destination=$(tail $1 -n 1)
cp ~/Recycling/$1 $destination 
rm ~/Recycling/$1
sed -i '$d' $destination # this removes the last line from the file

1voto

melpomene Points 5675

Il vous manque un $ avant les parenthèses :

destination=$(tail $1 -n 1)

0voto

Eugen Rieck Points 33670

Vous voudriez

$(tail $1 -n 1)

ou

`tail $1 -n 1`

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X