Bonjour à tous,
je suis en train de me monter un serveur sous fedora et j'effectue une sauvegarde tous les soirs d'un répertoire de synchro.
La sauvegarde tourne sur 20 jours: le soir j'efface le dernier répertoire, je renomme tous les autres pour décaler la numérotation (ils sont nommés JourJ-1, JourJ-2, ...etc... ) et je recrée le numéro 1 qui contiendra la sauvegarde du jour.
Je pense qu'il serait plus pratique pour la gestion que je nomme mes répertoires en (…)
Forum Programmation.shell Reference indirecte et tableaux
Bon là je pense m'adresser aux dieux du shell, mais j'ai un problème
Je souhaiterai faire un référence indirecte sur un tableau.
Je sais qu'on peut faire des références indirectes avec ${!maRef},
Je sais manipuler un tableau avec ${monTableau[monIndex]},
Mais ce que je souhaite savoir c'est s'il est possible de mixer les deux, genre :
${${!maRefTableau}[monIndex]}
Merci d'avance pour ceux qui se creuseront la tête (comme ça je ne serai pas tout seul) et mieux encore à ceux qui connaissent (…)
Je souhaiterai faire un référence indirecte sur un tableau.
Je sais qu'on peut faire des références indirectes avec ${!maRef},
Je sais manipuler un tableau avec ${monTableau[monIndex]},
Mais ce que je souhaite savoir c'est s'il est possible de mixer les deux, genre :
${${!maRefTableau}[monIndex]}
Merci d'avance pour ceux qui se creuseront la tête (comme ça je ne serai pas tout seul) et mieux encore à ceux qui connaissent (…)
Forum Programmation.shell eclater un fichier en +eur fichier selon un type de données
Bonjour à tous
je débute dans shell et je dois faire un script qui répond au besoin suivant :
dans un même toto.txt j'ai des données provenant de different systèmes. je dois séparer ces données.
exemple : toto.txt contient les données des professeurs et des etudiants
je dois séparer les données des professeurs dans un fichier professeur.txt et etudiants dans un fichier etudiant s.txt
dans le fichier toto les données des professeurs sont identifier par une colonne PROF et le (…)
je débute dans shell et je dois faire un script qui répond au besoin suivant :
dans un même toto.txt j'ai des données provenant de different systèmes. je dois séparer ces données.
exemple : toto.txt contient les données des professeurs et des etudiants
je dois séparer les données des professeurs dans un fichier professeur.txt et etudiants dans un fichier etudiant s.txt
dans le fichier toto les données des professeurs sont identifier par une colonne PROF et le (…)
Forum Programmation.shell [recuperer la position d'une chaine de caractere]
Bonjour à tous,
tt d'abord, merci à tt ceux qui m'apporteront leur aide.
Voici ce que je veux faire :
- j’ai un fichier avec des lignes de type :
Attribut1 : « +TITI+TOTO» Attribut2 : « +VAL1+VAL2+VAL3 » ….
- je veux, récupérer pour chaque ligne contenant « Attribut1 », la valeur de la chaine (ici +TITI+TOTO). Le pb, est que la posistion est différente d’une ligne à l’autre (je ne peux pas faire le cut)
-> en gros, (…)
tt d'abord, merci à tt ceux qui m'apporteront leur aide.
Voici ce que je veux faire :
- j’ai un fichier avec des lignes de type :
Attribut1 : « +TITI+TOTO» Attribut2 : « +VAL1+VAL2+VAL3 » ….
- je veux, récupérer pour chaque ligne contenant « Attribut1 », la valeur de la chaine (ici +TITI+TOTO). Le pb, est que la posistion est différente d’une ligne à l’autre (je ne peux pas faire le cut)
-> en gros, (…)
Forum Programmation.shell direction d'une requete dans fichier log
J'ai un script ksh,
dedans un requete sql, j'aimerai savoir comment rediriger le resultat de ma requete dans un fichier de log
voici a quoi resemble mon script
#!/bin/ksh
sqlplus login/password @requete.sql
c'est court mais ça marche!!!
merci pour vos reponses....
dedans un requete sql, j'aimerai savoir comment rediriger le resultat de ma requete dans un fichier de log
voici a quoi resemble mon script
#!/bin/ksh
sqlplus login/password @requete.sql
c'est court mais ça marche!!!
merci pour vos reponses....
Forum Programmation.shell Tri d'une liste en shell (KSH)
Bonjour à tous,
j'ai un probleme que j'arrive pas à resoudre. j'ai une liste de chaines de caracteres ( a b c d e) , cette liste correspond à une deuxieme liste d'entiers (5 2 1 3 4) ie a --5 , b --2 , c--1,...., je veux ecrire une fonction qui renvoie la liste de chaines ordonnés ie (c b d e a).
Si quelqu'un a une idée , comme je ne maitrise pas bien le shell, j'avoue que (…)
j'ai un probleme que j'arrive pas à resoudre. j'ai une liste de chaines de caracteres ( a b c d e) , cette liste correspond à une deuxieme liste d'entiers (5 2 1 3 4) ie a --5 , b --2 , c--1,...., je veux ecrire une fonction qui renvoie la liste de chaines ordonnés ie (c b d e a).
Si quelqu'un a une idée , comme je ne maitrise pas bien le shell, j'avoue que (…)
Forum Programmation.shell Suppression massive de lignes
Salut,
Voila je cherche un petit conseil. Je possede deux fichiers: f1 et f2 (environ 100000 et 60000 lignes respectivement).
Ce que je souhaite faire c'est supprimer de f1 les entrees se trouvant dans f2. A priori facile.. mais ce que je cherche c'est la solution la plus rapide possible.
Pour l'instant je parcours mon fichier f2 et je fais un sed '/entre/d' f1. Ca marche mais c'est terriblement lent..
J'ai essaye un grep -v -f f2 f1mais c'est encore (…)
Voila je cherche un petit conseil. Je possede deux fichiers: f1 et f2 (environ 100000 et 60000 lignes respectivement).
Ce que je souhaite faire c'est supprimer de f1 les entrees se trouvant dans f2. A priori facile.. mais ce que je cherche c'est la solution la plus rapide possible.
Pour l'instant je parcours mon fichier f2 et je fais un sed '/entre/d' f1. Ca marche mais c'est terriblement lent..
J'ai essaye un grep -v -f f2 f1mais c'est encore (…)
Forum Programmation.shell imagamagick en pratique : scanner -> gros tiff ...
Salut,
Au boulot, une multifonction produit de gros fichiers tif avec parfois plusieurs pages dedans, sous forme de calques (me semble-t-il). Ces fichiers arrivent via ftp dans un dossier partagé sur une machine Linux.
J'aimerais qu'automatiquement, ces images soit converties en un fichier png par page (par calque). Si au passage, chaqu'un de ces fichier png pouvait être "optimisé" pour prendre le moins de place possible (pas de canal alpha, espace de couleur respecté)
J'ai trouvé imagamagick, mais je comprend (…)
Au boulot, une multifonction produit de gros fichiers tif avec parfois plusieurs pages dedans, sous forme de calques (me semble-t-il). Ces fichiers arrivent via ftp dans un dossier partagé sur une machine Linux.
J'aimerais qu'automatiquement, ces images soit converties en un fichier png par page (par calque). Si au passage, chaqu'un de ces fichier png pouvait être "optimisé" pour prendre le moins de place possible (pas de canal alpha, espace de couleur respecté)
J'ai trouvé imagamagick, mais je comprend (…)
Forum Programmation.shell HashMap en shell
Bonjour à tous
y'a moyen en shell de mettre en oeuvre une sorte de hashMap clef/valeur
Cordialement.
y'a moyen en shell de mettre en oeuvre une sorte de hashMap clef/valeur
Cordialement.
Forum Programmation.shell extraction d'une requete SQL dans shell
bonjour à tous,
J'aimerais appliquer, une requete SQL, dans un cron (AIX, 5.3),
via un shell, en KSH.
j'ai la requete mais je voudrais qu'elle soit appliquer correctement à mon shell. voici le select :
#select count(*) from owlaccount where timestamp like '$JOURSEMAINE-$MOIS-$JOUR $HEURE%';
Merci pour les reponses.
Forum Programmation.shell Scruter un repertoire en permanance
Bonjour à tous,
quelqu'un pourrait me dire s'il y'a moyen de scruter un repertoire Rep de façon permanante, en shell, et renvoyer les nouveaux fichiers deposés dans le Rep.
Merci d'avance
quelqu'un pourrait me dire s'il y'a moyen de scruter un repertoire Rep de façon permanante, en shell, et renvoyer les nouveaux fichiers deposés dans le Rep.
Merci d'avance
Forum Programmation.shell Aide synthax shell pourle "case"
file_sql=requete.sql path_sqlplus=/exec/products/oracle/v10.2.0/bin ORACLE_BASE=/exec/products/oracle ORACLE_SID=RMSPOW1 database=$ORACLE_SID ORACLE_HOME=/exec/products/oracle/v10.2.0 #TIMESTAMP Thu Jan 18 19:28:25 NFT 2007 JOURSEMAINE=`date |cut -c 1-3` #Thu MOIS=`date |cut -c 5-7` #Jan JOUR=`date |cut -c 9-10` HEURE=`date |cut -c 12-13` #MINUTE echo "Exécution du fichier contenant la requete" echo "test" $JOURSEMAINE $MOIS $JOUR $HEURE # $path_sqlplus/sqlplus $user/$password #$path_sqlplus/sqlplus $user/$password@$database $file_sql #VALUE=`sqlplus -silent "/ " <(…)
Forum Programmation.shell Problèmes de chemin et truc qui va pas avec if elif fi
Bonjour à tous,
Voilà, je rame un peu dans la rédaction de mon premier script : c pas tout rose !
Premier problème : le script fonctionne dans un terminal, si je l'applique à un fichier situé dans le répertoire courant. Si je démarre le script en sélectionnant un fichier (clic droit + script nautilus) le script s'exécute mais le 'mv' ne fonctionne pas. WHY ?
Voici le script :
# Récupérer le nom du fichier sélectionné et son extension (…)
Forum Programmation.shell mkfifo et erreur 'Broken Pipe'
Bonsoir,
J'utilise la version svn de gajim (pour mon jabber). Donc j'ai un petit script shell 'gajom-svn' qui met à jour ma copie locale depuis le svn et si modification il y a eu, recompile les modules nécessaires.
De plus, pour que je puisse voir ce qui se passe, j'ai décidé de rediriger la sortie de toutes les commandes (svn, compilation, gajim) vers une pipe (que je crée au début) et de lancer un xterm en background qui va executer (…)
J'utilise la version svn de gajim (pour mon jabber). Donc j'ai un petit script shell 'gajom-svn' qui met à jour ma copie locale depuis le svn et si modification il y a eu, recompile les modules nécessaires.
De plus, pour que je puisse voir ce qui se passe, j'ai décidé de rediriger la sortie de toutes les commandes (svn, compilation, gajim) vers une pipe (que je crée au début) et de lancer un xterm en background qui va executer (…)
Forum Programmation.shell Comment gerer le \ ?
echo too\toto|while read line
do
echo $line
done
Je voudrais que $line contienne too\toto et pas toototo
Le code suivant fonctionne:
echo too\\\\toto|while read line
do
echo $line
done
Et la ca m'affiche bien too\toto mais bon, je vois pas le pourquoi du comment et ca me parrait louche donc j'aimerai bien un peu d'aide!
Merci
do
echo $line
done
Je voudrais que $line contienne too\toto et pas toototo
Le code suivant fonctionne:
echo too\\\\toto|while read line
do
echo $line
done
Et la ca m'affiche bien too\toto mais bon, je vois pas le pourquoi du comment et ca me parrait louche donc j'aimerai bien un peu d'aide!
Merci
Forum Programmation.shell Extraction du répertoire à partir d'un nom de fichier
Bonjour,
Je souhaiterais, à partir d'un nom complet de fichier (avec son chemin complet), extraire uniquement le répertoire.
"/etc/network/interfaces" deviendrait alors "/etc/network/"
Je connais déjà basename qui fait l'inverse (extraction uniquement du nom du fichier). Je cherche donc une fonction équivalente ou une méthode la plus propre possible pour y arriver.
D'avance merci.
Je souhaiterais, à partir d'un nom complet de fichier (avec son chemin complet), extraire uniquement le répertoire.
"/etc/network/interfaces" deviendrait alors "/etc/network/"
Je connais déjà basename qui fait l'inverse (extraction uniquement du nom du fichier). Je cherche donc une fonction équivalente ou une méthode la plus propre possible pour y arriver.
D'avance merci.
Forum Programmation.shell Comment fusionner 2 tables
Bonjour,
J'ai une petite colle à vous proposer, vous les génies des outils unix.
(et là on va voir si la flatterie fonctionne...)
J'ai 2 tables sous forme d'un fichier texte; les données sont séparées par des tabulations.
Les 2 tables associent des données à un code (première colonne des 2 tables)
A priori on retrouve les même codes dans les 2 tables. Mais on ne devrait pas se baser la dessus.
Le problème : j'aimerai joindre les 2 tables.
(…)
J'ai une petite colle à vous proposer, vous les génies des outils unix.
(et là on va voir si la flatterie fonctionne...)
J'ai 2 tables sous forme d'un fichier texte; les données sont séparées par des tabulations.
Les 2 tables associent des données à un code (première colonne des 2 tables)
A priori on retrouve les même codes dans les 2 tables. Mais on ne devrait pas se baser la dessus.
Le problème : j'aimerai joindre les 2 tables.
(…)
Forum Programmation.shell programme shell
comment ecrire une commande qui toute les dix secondes complete un fichier log en y ajoutant la date et la liste des utilisateurs connecté a cet instant sur la machine
Forum Programmation.shell retirer une chaîne de caractère à la fin du nom de fichier
Bonsoir à tous,
j'ai qq fichiers dans un répertoire et je veux supprimer dans le nom des fichiers tout ce qui est après une chaîne de caractère précise.
exemple de nom de fichier : cars&max=250&adv_g=&adv_age=7&adv_so
qui doit devenir : cars
à chaque fois la partie à supprimer commence par &max=250
je suis novice, j'essaie avec "for i in", j'ai trouvé comment supprimer des trucs au début des noms de fichiers mais pas à la fin. J'ai l'impression que le & (…)
j'ai qq fichiers dans un répertoire et je veux supprimer dans le nom des fichiers tout ce qui est après une chaîne de caractère précise.
exemple de nom de fichier : cars&max=250&adv_g=&adv_age=7&adv_so
qui doit devenir : cars
à chaque fois la partie à supprimer commence par &max=250
je suis novice, j'essaie avec "for i in", j'ai trouvé comment supprimer des trucs au début des noms de fichiers mais pas à la fin. J'ai l'impression que le & (…)
Forum Programmation.shell Comparer deux numéros de versions
Bonjour,
je dispose de deux variables VERSION_CLIENT et VERSION_APPLI contenant des numéros de versions.
Je dois comparer ces numéros de versions et cela me pose problème.
En effet, la comparaison bash se fait selon l'ordre lexicographique et mes versions sont de la forme:
x.yz
ou x et y sont des entiers (en gros le majeur et le mineur)
et z est une lettre (release)
Donc bon, j'avais bien une solution à la base du style:
[code]
if [[ $VERSION_CLIENT > (…)
je dispose de deux variables VERSION_CLIENT et VERSION_APPLI contenant des numéros de versions.
Je dois comparer ces numéros de versions et cela me pose problème.
En effet, la comparaison bash se fait selon l'ordre lexicographique et mes versions sont de la forme:
x.yz
ou x et y sont des entiers (en gros le majeur et le mineur)
et z est une lettre (release)
Donc bon, j'avais bien une solution à la base du style:
[code]
if [[ $VERSION_CLIENT > (…)
Forum Programmation.shell [BASH] Contenu de variable de variable
Bonjour,
Je cherche un moyen de pouvoir stoquer le nom d'une variable dans une autre variable afin de pouvoir la tester.
Exemple :
foo_bar1=test1
foo_bar2=test2
foo_bar3=test3
et lors du deroulement de mon script une variable bar va etre affectuée par une valeur qui va etre soit bar1, bar2 ou bar3 et je voudrais pourvoir utiliser le contenu de foo_bar1 si bar=bar1 etc ...
Je sais pas si j'ai ete clair ou pas mais si une personne a une solution je (…)
Je cherche un moyen de pouvoir stoquer le nom d'une variable dans une autre variable afin de pouvoir la tester.
Exemple :
foo_bar1=test1
foo_bar2=test2
foo_bar3=test3
et lors du deroulement de mon script une variable bar va etre affectuée par une valeur qui va etre soit bar1, bar2 ou bar3 et je voudrais pourvoir utiliser le contenu de foo_bar1 si bar=bar1 etc ...
Je sais pas si j'ai ete clair ou pas mais si une personne a une solution je (…)
Forum Programmation.shell Script Bash
Bonjour à tous.
Ce n'est pas sans émotion que j'écris mon première demande dans le forum.
Il y a un truc que je ne capte pas.
J'ai fait dans ma Debian le script bash ci-dessous simple qui range mes vidéos de mon Home et mes répertoires de téléchargement dans le répertoire video.
Sous ma Debian, ça marche perfecto, sauf pour les fichiers avec un espace (mais à la limite, ça je crois avoir déjà vu des solutions vite fait).
Le (…)
Ce n'est pas sans émotion que j'écris mon première demande dans le forum.
Il y a un truc que je ne capte pas.
J'ai fait dans ma Debian le script bash ci-dessous simple qui range mes vidéos de mon Home et mes répertoires de téléchargement dans le répertoire video.
Sous ma Debian, ça marche perfecto, sauf pour les fichiers avec un espace (mais à la limite, ça je crois avoir déjà vu des solutions vite fait).
Le (…)
Forum Programmation.shell insertion du caractère \ dans un PATH avec blanc
Bonjour, et joyeuses fêtes
Quand je fais :
find /tmp/./ -name *.exe
J'ai un résultat suivant
/tmp/./path/path windows avec des blancs/files1.exe
/tmp/./path/path windows avec des blancs/files2.exe
J'aimerais avoir les resultat suivant :
/tmp/./path/path\ windows\ avec\ des\ blancs/files1.exe
/tmp/./path/path\ windows\ avec\ des\ blancs/files2.exe
J'ai donc essayé :
find /tmp/./ -name *.exe | sed s/\ /_/g
Ce qui ne me convient pas car cela est inexploitable pour le monde UNIX. Le resultat devient :
/tmp/./path/path_windows_avec_des_blancs/files1.exe
J'ai donc essayé :
find /tmp/./ -name (…)
Quand je fais :
find /tmp/./ -name *.exe
J'ai un résultat suivant
/tmp/./path/path windows avec des blancs/files1.exe
/tmp/./path/path windows avec des blancs/files2.exe
J'aimerais avoir les resultat suivant :
/tmp/./path/path\ windows\ avec\ des\ blancs/files1.exe
/tmp/./path/path\ windows\ avec\ des\ blancs/files2.exe
J'ai donc essayé :
find /tmp/./ -name *.exe | sed s/\ /_/g
Ce qui ne me convient pas car cela est inexploitable pour le monde UNIX. Le resultat devient :
/tmp/./path/path_windows_avec_des_blancs/files1.exe
J'ai donc essayé :
find /tmp/./ -name (…)
Forum Programmation.shell comment trier un fichier en même temps que awk le lit
bonjour, merci d'avance pour votre aide ,
je cherche a trier, avec un script en bash, un fichier dont chaque ligne commence par un nombre de 0 à 600 puis une tabulation suivi du restant de la ligne , je souhaiterai le trier en autant de fichier que de nombre différent qui commence chaque ligne.
voici mon ébauche de débutant :
set nb_temp 600
while [$nb_temp]
do
cat resultat.txt | awk -F" " ' $1 ~/^""%3d" ",$nb_temp / {print $0}' (…)
je cherche a trier, avec un script en bash, un fichier dont chaque ligne commence par un nombre de 0 à 600 puis une tabulation suivi du restant de la ligne , je souhaiterai le trier en autant de fichier que de nombre différent qui commence chaque ligne.
voici mon ébauche de débutant :
set nb_temp 600
while [$nb_temp]
do
cat resultat.txt | awk -F" " ' $1 ~/^""%3d" ",$nb_temp / {print $0}' (…)
Forum Programmation.shell Propager un alias depuis un script vers le shell courant
Bonjour,
Sur une machine où plusieurs utilisateurs (dont moi) partagent le même compte, je souhaite utiliser régulièrement des alias qui me sont propres.
Du fait que le compte est partagé, il est hors de question d'aller modifier les fichiers de configuration qui sont chargés au moment de la connexion.
J'ai donc en tête de stocker mes alias dans un script KSH (ce qui correspond à mon type de shell courant) que je pourrais exécuter à chaque connexion. Malheureusement, si je (…)
Sur une machine où plusieurs utilisateurs (dont moi) partagent le même compte, je souhaite utiliser régulièrement des alias qui me sont propres.
Du fait que le compte est partagé, il est hors de question d'aller modifier les fichiers de configuration qui sont chargés au moment de la connexion.
J'ai donc en tête de stocker mes alias dans un script KSH (ce qui correspond à mon type de shell courant) que je pourrais exécuter à chaque connexion. Malheureusement, si je (…)