J'essaie de créer un alias pour déplacer des fichiers et des répertoires dans le tmp
répertoire. C'est ce que j'ai essayé:
alias rm='/bin/mv *.* /tmp'
Le problème est que lorsque je tape rm filename
, je reçois une erreur disant:
/bin/mv: target 'filename' is not a directory.
Je sais que le nom de fichier est juste un fichier. Le fait est que je veux le déplacer dans le /tmp
répertoire spécifié . Quelqu'un peut-il m'aider?
alias
. Cependant, même si cela était possible, ce serait une mauvaise idée de l'utiliseralias
. Premièrement, si vous êtes habitué au comportement personnalisé derm
, vous pourriez être obligé d'utiliser l'édition normale sur un autre ordinateur (faux sentiment de sécurité). Deuxièmement, si un autre utilisateur utilise votre ordinateur et essaie d’effacer un gros fichier binaire de 10 Go pour économiser de l’espace, il s’attend vraiment à ce que le fichier soit supprimé et non simplement déplacé vers / tmp.Réponses:
en utilisant GNU Collection
mv
8.13 sur Ubuntu 12.04. Notez l'espace après/tmp
.la source
Votre alias signifie que lorsque vous tapez 'rm filename', vous exécutez réellement cette commande:
Ce n'est évidemment pas ce que vous voulez. Je ne pense pas que vous puissiez utiliser un alias pour cela, car je ne pense pas qu'il soit possible de réordonner les arguments transmis à un alias. Vous ferez mieux d'écrire un court script shell qui ressemble à ceci:
Remarque: vous ne voulez pas non plus *. *, Cela ressemble à un Windowsisme ... qui ne fera correspondre que les noms de fichiers contenant des points. De nombreux noms de fichiers sous Linux ne contiennent pas de points.
la source
"$@"
c'est ce que tu veux.