Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".
nombre réponses : 25

#0 Re : -1 »  Script extinction écran » Le 29/03/2015, à 11:31

Watael
Réponses : 8

salut,

elle sert surtout à rien cette suite de if !

#!/bin/bash
duree=(10 60 120 300 600)
pwrMgmt() { dconf write /org/mate/power-manager/sleep-display-$1 $2;}
choix=$(zenity --list --radiolist \
	--title "Extinction de l'écran" --text "Durée avant extinction de l'écran" \
	--height "210"\
	--column="Choix" --column="Durée" --column="Temps"\
	--hide-column="2" --print-column="2" --hide-header\
		true "${duree[0]}" "10 secondes"\
		false "${duree[1]}" "1 minute"\
		false "${duree[2]}" "2 minutes"\
		false "${duree[3]}" "5 minutes"\
		false "${duree[4]}" "10 minutes");
(($?)) && exit 1 || { pwrMgmt ac $choix && pwrMgmt battery $choix;}

utiliser une variable ou un tableau pour stocker une commande est également une mauvaise idée.
je les ai remplacées par une seule fonction qui prend deux arguments.

#1 Re : -1 »  Script extinction écran » Le 29/03/2015, à 12:50

Watael
Réponses : 8

non !

case $var in
cas1) cmd1;;
cas2) cmd2;;
*) cmd_autreCas;;
esac

#2 Re : -1 »  Script extinction écran » Le 29/03/2015, à 17:46

Watael
Réponses : 8

toi, tu as fait:

case $var in
cas1) comd1;;
esac
case $var in
cas2) comd2;;
esac
case $var in
*) comd_autrecas;;
esac

alors que la forme correcte d'un case/esac est celle que j'ai montrée dans mon message précédent.

#3 Re : -1 »  Script : If avec plusieurs éléments » Le 26/03/2015, à 15:16

Watael
Réponses : 18

salut,

sachant que la syntaxe, c'est

if command; then ...fi

ou command peut être test, ou une autre commande;.
le test est superfétatoire.

donc,

if ping -c3 -t3 $machine >/dev/null 2>&1; then : ...; else : ...; fi

#4 Re : -1 »  Lancer un script au bash au démarrage du PC automatiquement » Le 24/03/2015, à 16:14

Watael
Réponses : 9

salut,

si tu n'as qu'un répertoire à créer au démarrage, autant mettre la commande dans /etc/rc.local; avant le exit 0 qui doit impérativement rester la dernière commande.

#5 Re : -1 »  Coup de pouce pour mon crontab [résolu] » Le 24/03/2015, à 14:41

Watael
Réponses : 13

salut,

les crontab utilisateurs ne comportent pas le nom de l'utilisateur.

et vérifie que le chemin de chaque exécutable appelé dans le script est dans le PATH de cron.

quel intérêt d'utiliser script dans le script ?

#6 Re : -1 »  Coup de pouce pour mon crontab [résolu] » Le 24/03/2015, à 15:29

Watael
Réponses : 13

je doute que webcam soit sous ton $HOME.

pi  /usr/bin/webcam

ceci indique que cron tente d'exécuter pi avec /usr/bin/webcam en argument, mais pi n'est pas une commande !

il nous faut la ligne cron exécutée, et les lignes du log qui rapportent le comportement de cette ligne.

#7 Re : -1 »  Coup de pouce pour mon crontab [résolu] » Le 24/03/2015, à 15:48

Watael
Réponses : 13

si je comprends bien la page man (sur internet, car ce programme n'est pas installé sur ma machine) du programme, la ligne cron devrait être, pour faire un test toutes les minutes :

* *    * * * /<cheminAbsoluVers>/webcam /home/<tonUser>/.webcamrc

je ne vois, par ailleurs, pas d'option -c dans cette même page man. hmm

#8 Re : -1 »  [RESOLU] Lister un répertoire » Le 21/03/2015, à 17:22

Watael
Réponses : 10

salut,

dans

ls $dir/*

le shell développe l'astérisque avant d'exécuter la commande; c'est-à-dire qu'il "affiche" la liste des fichiers du répertoire indiqué, et la passe en arguments à la commande (ici `ls').
or, le shell, par défaut, n'affiche pas les fichiers cachés.
les options pour `ls' perdent alors tous leur sens.

#9 Re : -1 »  Passerelle téléphonique sous linux » Le 19/03/2015, à 00:05

Watael
Réponses : 10

salut,

Je dois modifier l'interface web d'une passerelle téléphonique installé sous linux.
Je doit donc supprimer un document pdf[...].

quel accès as-tu sur la machine ? direct ? ssh ? ftp ? ...?

par précaution, fais une sauvegarde du fichier avant sa suppression.

#10 Re : -1 »  Passerelle téléphonique sous linux » Le 19/03/2015, à 14:02

Watael
Réponses : 10

la racine d'un serveur web (/var/www/, par exemple) n'est pas la racine du système (/).

find / -type f -regex '.*/static/commun/doc/nom-fichier.pdf'

si c'est bon, ajoute l'action -delete à la commande ligne de commande.
si find retourne plus d'un fichier, il faudra passer par -exec rm -i {} \;, ce qui permettra de ne supprimer que celui qui convient.

#11 Re : -1 »  [Résolu] Utilisation de la casse dans les variables d'un script bash » Le 15/03/2015, à 23:28

Watael
Réponses : 4

salut,

nocaseglob fonctionne dans le Développement des chemins
fais plus simplement ainsi :

$ v="Bla bLa"
$ v="${v,,}"
test "$v" = "bla bla" && echo ok || echo ko                                        
ok 

ou utilise nocasematch avec un case wink; ce serait d'ailleurs mieux d'après ce que j'ai compris de tes intentions.

#12 Re : -1 »  [Résolu] Vérification d'un petit script pour apache svp » Le 11/03/2015, à 13:30

Watael
Réponses : 12

salut,

heu... quand même une toute petite remarque :
est-ce que je peux passer rm -rf /, comme argument ?
hmm
ah, oui, je peux !
yikes

#13 Re : -1 »  [Résolu] Vérification d'un petit script pour apache svp » Le 11/03/2015, à 14:41

Watael
Réponses : 12

oops! j'ai lu $@ à la place de $0, parce que je ne comprenais pas que tes scripts ne font rien, sinon afficher le status d'apache.
j'ai cru que tu passais la commande en paramètre.
toutes mes excuses.

#14 Re : -1 »  Lancer une série de commandes de terminal en lançant un fichier » Le 15/03/2015, à 13:30

Watael
Réponses : 5

salut,

un lanceur, ou un script, pour lancer un script, ça reste un wrapper.

cd est généralement inutile dans un script : il suffit souvent de mettre le chemin vers le script à la place du point, qui représente le répertoire courant.

pourquoi ce script n'est-il pas dans un répertoire du PATH ?

#15 Re : -1 »  [Résolu]retour comande ls dans plusieur variable » Le 26/02/2015, à 21:24

Watael
Réponses : 7

salut,

c'est pas la meilleure idée de remplir un tableau, directement, avec une substitution de commande, car la sortie de la commande sera coupée en mots :

$ monTableau=( $(printf '%s\n' 'le contenu' de 'mon tableau') )
$ printf '%s\n' "${monTableau[@]}" 
le
contenu
de
mon
tableau

«oui, mais ce n'est pas le cas ici !»
ça ne dispense pas de prodiguer les meilleures pratiques :

$ monTableau=("bla bla")
$ while read line; do monTableau+=( "$line" ); done < <(printf '%s\n' 'le contenu' de 'mon tableau')

et puisqu'ici, il est question de fichiers :

$ monTableau=("bla bla")
$ for f in $rep/*; do monTableau+=( "${f##*/}" ); done

#16 Re : -1 »  grep » Le 24/02/2015, à 18:50

Watael
Réponses : 3

salut,

`grep' est un outil pour afficher les lignes correspondant à un motif donné
pour effectuer des modifications sur un fichier en recherchant des motifs, il faut utiliser `sed'.

#17 Re : -1 »  [Resolue] apt-get update upgrade » Le 21/02/2015, à 18:46

Watael
Réponses : 12

salut,

+1 pour le -y

-1 pour le gksudo
-3 pour les sudo

dist-upgrade, c'est peut-être un peu radical, non ?

édite le script avec sudoedit, sans les *sudo
rend-le exécutable et exécute-le avec sudo.

#19 Re : -1 »  aide pour creation d'un script shell » Le 15/02/2015, à 21:03

Watael
Réponses : 4

salut,

si c'est la seconde solution alors il vaudrait mieux utiliser cette commande

:

lesRepertoireSeulement=( /media/*/ )

#20 Re : -1 »  [Résolu] Traitement de fichiers par ordre croissant » Le 11/02/2015, à 00:21

Watael
Réponses : 4

salut,

un simple printf ne suffirait-il pas ?

printf '%s\n' * | sort -V

#21 Re : -1 »  [RESOLU]Decomposition de nombre aleatoirement » Le 09/02/2015, à 06:36

Watael
Réponses : 11

salut,

peu importe le langage, ce qui compte c'est l'algorithme.

autant que je sache, non pas qu'ils n'en soient pas capables, mais parce qu'ils nécessitent le recours à un navigateur internet pour afficher leurs données,
javascript et php ne sont pas adaptés (même s'il existe une CLI pour php);

donc plutôt bash, ou python, ou perl

#22 Re : -1 »  Ajouter une Date (AWK) » Le 03/02/2015, à 17:46

Watael
Réponses : 1

salut,

awk -v date="$date" '{print >"chemin/"$1"+"date}' $log

#23 Re : -1 »  Question suppression / copie fichier » Le 01/02/2015, à 18:11

Watael
Réponses : 21

salut,

nl ne me paraît pas une bonne solution : j'ai toujours un fichier nommé fais$'\n'chier wink
ce fichier ne posera pas de problème si on n'utilise que le développement de chemins du shell, et les indices du tableau.

#24 Re : -1 »  RESOLU saisie dynamique » Le 28/01/2015, à 18:05

Watael
Réponses : 3

salut,

c'est pas clair sad

en plus, en général, changer de répertoire est inutile.
quant à récupérer des commandes par une saisie utilisateur, c'est périlleux, et je ne le recommande pas.

s'il n'est question que de lire une donnée, soit elle le nom d'un répertoire, `read' sert à ça.