Je veux déplacer les fichiers journaux d'un chemin (chemin source) vers un autre chemin (chemin de destination). Ce chemin d'accès source et ce chemin de destination sont présents dans un fichier texte. comme ::comment déplacer des fichiers d'un chemin vers un autre chemin dans unix en utilisant shell-script
source_path=abc/xyz
source_path=pqr/abc
desination_path=abcd/mlk
donc je lire ce fichier et les chemins stockés dans différents variables.i ont chemin source multiple donc j'emmagasinés dans un varible qui agit comme tableau. comme ci-dessous ::
sourcePaths=`grep source_path myfile |cut -d= -f2`
destPath=`grep destination_path myfile |cut -d= -f2`
et j'ai un seul chemin de destination où je veux déplacer tous ces fichiers. Maintenant, je veux voyager à travers tous ces chemin source, trouver le fichier de logs avec une extension spécifique, zip tous ces fichiers et se déplacer vers le chemin de destination. J'utilise loop pour récupérer les données de la variable sourcePaths (ceci est juste un essai). comme:;
for i in $sourcePaths
do
echo $i
done
Quelqu'un peut-il m'aider dans ce domaine?
Merci beaucoup pour votre réponse Guys.Now je veux ajouter un filtre dans ce. Je veux déplacer les fichiers du chemin d'accès source qui ont 10 jours, et je veux supprimer ces fichiers du chemin source après le déplacement. S'il vous plaît aider
Juste une autre question !! Que faire si je veux stocker ce fichier zip avec le nom qui contient l'horodatage, de sorte qu'il n'y aura pas de duplication du nom de fichier au chemin de destination.
Salut Tous, une question de plus.Quand je zipper le fichier avec l'option ci-dessus, il est en train de créer sous-dossier dans le fichier zip en fonction de son path.ie. Si je zippe les fichiers logs de src/int/xlog/abc, et quand je décompresse ce fichier zip, le contenu de ce fichier zip nouvellement mis en cache enregistre les fichiers dans src/int/xlog/abc/abc.zip. Je ne veux pas this.what je veux, c'est que ce fichier zip directement contenu abc.zip. Pas dans le sous-dossier.
Salut les gars, je suis de retour avec une autre question.Voici en utilisant le script ci-dessous je suis capable de créer le nom de fichier zip comme base pathname.egxyz.zip et abc.zip selon mon chemin ci-dessus en utilisant le code ci-dessous: :
timestamp=`date +%Y%m%d_%H%M%S`
zipFile=$destPath/$(basename $sourcePath).$timestamp.zip
Mais maintenant, je veux créer ce nom de fichier (nom de fichier ieZip) plus spécifique dépend de sa path.Like source si le contenu de mon fichier texte
source_path=obj/imp/backup/logs/db1
source_path=obj/res/input/int/db2
desination_path=abcd/mlk
Maintenant, je veux créer un nom de fichier zip quelque chose comme ça.
backup_logs_db1.zip
input_int_db2.zip
signifie que je veux utiliser le nom de trois répertoire pour créer un nouveau nom de fichier zip. Il est fourni que le chemin source dans le contenu du fichier texte plus de trois nom de répertoire.
Donc, quelqu'un peut-il m'aider dans ce domaine. Thnaks à l'avance !!!
@fahd :: Merci beaucoup pour votre réponse. Maintenant, je veux ajouter un filtre dans ce. Je veux déplacer les fichiers du chemin d'accès source qui ont 10 jours, et je veux supprimer ces fichiers du chemin source après le déplacement. S'il vous plaît aider – MAS1
@ Fahd :: Merci pour la réponse instantanée.Juste une question, est-ce que mes conditions précédentes sont également travailler avec cela. Je veux dire zipper le fichier. Je veux ajouter ces deux filtres seulement, en gardant ma condition précédente telle qu'elle est.Votre précédente réponse satiesfies ma toute condition précédente, Voulez savoir sur ce nouveau message. Et je veux supprimer les fichiers déplacés après le déplacement du chemin source. – MAS1
oui, les conditions précédentes continueront à travailler. La commande 'mv' déplace les fichiers, donc oui, ils ne seront plus dans le chemin source. – dogbane