remplacer un fichier par un autre fichier dans bash
Ive appris à remplacer une ligne à l'aide de script bash, mais je suis désireux d'apprendre comment remplacer un fichier par un autre fichier dans un autre dossier avec le même nom. Est-ce possible??
Copie le fichier d'origine et remplace le fichier cible (d'où -f qui signifie "force").
Je ne pourrais pas obtenir de ce processus. Ai-je raté quelque chose ou besoin d'en finir avec fait??? Quelle est la commande que vous écrivez? Vous n'avez pas besoin de crochets. comme une note de côté, cela préserve le fichier d'origine de la mode et de la propriété lorsqu'elle est faite avec sudo Si vous voyez toujours une invite utiliser which cp à la ligne de commande pour vérifier cp alias.
Cela effacera tout le contenu de la deuxième fichier avec le contenu de la première. Cependant, votre propriétaire, le groupe et les permissions du deuxième fichier ne sera pas modifié.
Si fichier2 n'existe pas, alors fichier1 est renommé fichier2. Si fichier2 existe, son contenu est remplacé par le contenu de fichier1.
mv -i file1 file2
Comme ci-dessus, cependant, depuis la "-i" (interactif) l'option est spécifiée, si fichier2 existe, l'utilisateur est invité avant de l'écraser avec le contenu de fichier1.
mv file1 file2 file3 dir1
Les fichiers fichier1, fichier2, fichier3 sont déplacés vers le répertoire dir1. dir1 doit exister ou mv se terminera avec une erreur.
mv dir1 dir2
Si dir2 n'existe pas, alors dir1 est renommé dir2. Si dir2 existe, le répertoire dir1 est créé dans le répertoire dir2.
Ce n'est pas faire exactement ce que l'OP veut - il se déplace/renomme les fichiers, pas de copies/les écrase... SALUT @Christian merci pour votre commentaire. Pouvez vous s'il vous plaît préciser davantage? Je veux comprendre pourquoi le renommage d'un fichier n'est pas le même que le remplacement. Par exemple, si je veux "remplacer" fichier1 avec fichier2, pourquoi ne peux pas je viens de faire: mv fichier1 fichier2 ? Cette commande remplacer si fichier1 est retiré en premier? Le renommage d'un fichier signifie qu'il ne existe pas dans l'emplacement d'origine - me semble que ce que l'OP veut, c'est de remplacer un fichier sans les effets secondaires.
Aujourd'hui, j'étais dans le besoin de quelque chose de la même solution, la seule chose à changer est j'ai besoin de remplacer l'ancienne version de fichier php dans de nombreuses répertoire des utilisateurs avec la version la plus récente. Je suis la tête ici et il suffit de mélanger correspondre avec d'autres pile de répondre et de résoudre mon problème. J'ai utilisé @joseph de code avec la commande rechercher.
Je suis le partage de mon peu de code ici, j'espère que ça aidera quelqu'un.
for file in $(find /home/*/-type f -name 'timthumb.php');
do
cat /home/timthumb.php > $file;
done
Copie le fichier d'origine et remplace le fichier cible (d'où
-f
qui signifie "force").Quelle est la commande que vous écrivez? Vous n'avez pas besoin de crochets.
comme une note de côté, cela préserve le fichier d'origine de la mode et de la propriété lorsqu'elle est faite avec sudo
Si vous voyez toujours une invite utiliser
which cp
à la ligne de commande pour vérifiercp
alias.OriginalL'auteur Nick Brunt
Dans le cas où vous essayez de copier simplement le contenu du fichier essayer de
Cela effacera tout le contenu de la deuxième fichier avec le contenu de la première. Cependant, votre propriétaire, le groupe et les permissions du deuxième fichier ne sera pas modifié.
OriginalL'auteur Joseph
Utiliser ces commandes:
Si fichier2 n'existe pas, alors fichier1 est renommé fichier2. Si fichier2 existe, son contenu est remplacé par le contenu de fichier1.
Comme ci-dessus, cependant, depuis la
"-i"
(interactif) l'option est spécifiée, si fichier2 existe, l'utilisateur est invité avant de l'écraser avec le contenu de fichier1.Les fichiers fichier1, fichier2, fichier3 sont déplacés vers le répertoire dir1. dir1 doit exister ou
mv
se terminera avec une erreur.Si dir2 n'existe pas, alors dir1 est renommé dir2. Si dir2 existe, le répertoire dir1 est créé dans le répertoire dir2.
SALUT @Christian merci pour votre commentaire. Pouvez vous s'il vous plaît préciser davantage? Je veux comprendre pourquoi le renommage d'un fichier n'est pas le même que le remplacement. Par exemple, si je veux "remplacer" fichier1 avec fichier2, pourquoi ne peux pas je viens de faire: mv fichier1 fichier2 ? Cette commande remplacer si fichier1 est retiré en premier?
Le renommage d'un fichier signifie qu'il ne existe pas dans l'emplacement d'origine - me semble que ce que l'OP veut, c'est de remplacer un fichier sans les effets secondaires.
OriginalL'auteur user1635666
Aujourd'hui, j'étais dans le besoin de quelque chose de la même solution, la seule chose à changer est j'ai besoin de remplacer l'ancienne version de fichier php dans de nombreuses répertoire des utilisateurs avec la version la plus récente. Je suis la tête ici et il suffit de mélanger correspondre avec d'autres pile de répondre et de résoudre mon problème. J'ai utilisé @joseph de code avec la commande rechercher.
Je suis le partage de mon peu de code ici, j'espère que ça aidera quelqu'un.
OriginalL'auteur adaptable.services