#1 Le 15/12/2014, à 15:12
- PowaBanga
[Résolut] Changer wallpaper à partir d'une liste de fichiers
Bonjour,
est-il possible de faire des box avec des espaces ?
de ce type :
Nom d'un fichier.jpg ()
{
Script
}
Si oui, comment ?
Dernière modification par PowaBanga (Le 18/12/2014, à 20:58)
Hors ligne
#2 Le 16/12/2014, à 20:49
- Hizoka
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
J'ai rien compris...
tu veux faire une fonction contenant des espaces ?
en bash ?
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#3 Le 17/12/2014, à 12:53
- nesthib
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
@Hernou : ta question n'a aucun sens sans contexte, essaie de donner un exemple de ce que tu veux faire qui soit clair. Explique le but de l'opération, définis ce qu'est une « box avec des espaces », le langage utilisé, etc.
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#4 Le 17/12/2014, à 18:04
- PowaBanga
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
Je souhaite créer automatiquement un script qui va changer aléatoirement mon wallpaper à partir d'un dossier définit, et que lorsque que ce script soit fini, un autre soit généré automatiquement.
L'intéret étant qu'un wallpaper ne sera jamais affiché 2 fois de suite ou à des séquences trop courte, et éventuellement, qu'il soit possible de reprendre celui-ci là ou il en était lors de la dernière extinction au démarage.
#!/bin/bash
creation ()
{
echo "#!/bin/bash
CURRENTWALLPAPER=$(gsettings get org.gnome.desktop.background picture-uri)
" > .wallpaper
#-------
chmod +x .wallpaper
while true
do
while read wallpaper
do
#------------------- Ça c'est pas juste il faut trouve une solution...-------------#
echo "
$wallpaper
}
$wallpaper ()
{
gsettings set org.gnome.desktop.background picture-uri "file://$wallpaper"
sleep 5
" >> .wallpaper
#-----------------------------------------------------------
done < <(find $HOME/Images/wallpapers -type f | shuf)
done
#-----------
echo "
exit
}
$CURRENTWALLPAPER
" >> .wallpaper
sed -i '4d' .wallpaper
sed -i '5d' .wallpaper
#---------------------------------------#
execution
}
execution ()
{
bash .wallpaper
rm -rf .wallpaper
creation
}
if [ -f "$HOME/.wallpaper" ];then
echo "Le fichier existe !"
execution;
else
echo "Le fichier n'existe pas !"
creation
execution;
fi
Hors ligne
#5 Le 17/12/2014, à 22:09
- nesthib
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
Pourquoi écrire un script qui génère un script qui change l'arrière plan plutôt que d'écrire un script qui change directement l'arrière plan de façon aléatoire ?
Ce que tu essaies de faire est une très mauvaise pratique, je te conseille fortement de revoir ta méthode et d'écrire un script qui fait directement le travail souhaité.
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#6 Le 17/12/2014, à 22:49
- Hizoka
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
sachant que tu devrais trouver des scripts déjà fait sur le forum.
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#7 Le 18/12/2014, à 01:25
- PowaBanga
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
L'intéret étant qu'un wallpaper ne sera jamais affiché 2 fois de suite ou à des séquences trop courte, et éventuellement, qu'il soit possible de reprendre celui-ci là ou il en était lors de la dernière extinction au démarage.
Maintenant si tu connais le moyen de faire un script qui va changer le wallpaper de façon aléatoire sans répéter deux fois la même image dans une séquance, c'est très précisément ce que je cherche à faire sans y arriver pour le moment...
Et si ces scripts son déjà sur le forum, je ne les ai pas trouvé ... :-(
Dernière modification par PowaBanga (Le 18/12/2014, à 01:26)
Hors ligne
#8 Le 18/12/2014, à 09:04
- pingouinux
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
Bonjour,
Tu peux t'inspirer de ce script, qui retourne un nombre aléatoire entre 1 et 5 à chaque appel
#!/bin/bash
fichier=~/ma_liste_aleatoire
# Si le fichier n'existe pas ou est vide, on le régénère
if [ ! -s "$fichier" ]; then
seq 5 | sort -R >"$fichier" # À remplacer par la liste des images
fi
sed -n 1p "$fichier" # On prend la 1ère ligne
sed -i 1d "$fichier" # On supprime la 1ère ligne
Hors ligne
#9 Le 18/12/2014, à 09:26
- Hizoka
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
Utilise un test en début de script qui vérifie si le fichier de config existe et s'il n'est pas vide, sinon tu crées une liste des wallpapers que tu sauvegardes,
find "${WallpapersFolder}" -iname "*.jpg" > ~/.Wallpapers.cfg
et ton script recupere la 1ere ligne et l'efface du fichier
Wallpaper=$(head -1 ~/.Wallpapers.cfg)
sed -i "1d" ~/.Wallpapers.cfg
et tu l'affiches.
EDIT : et merde, j'ai dit tout pareil que pingouinux...
J'aurais dû répondre aussitot plutot que de laisser la fenetre en attente.
Dernière modification par Hizoka (Le 18/12/2014, à 09:28)
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#10 Le 18/12/2014, à 10:58
- pingouinux
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
@Hizoka :
Eh oui, la vie est dure ! Il faut choisir entre "répondre sans réfléchir", ou "se faire griller".
Pour celui qui demande, il est rassurant d'avoir deux réponses qui vont dans le même sens.
Remarque : Il manque un sort -R (ou un shuf) après ton find
Dernière modification par pingouinux (Le 18/12/2014, à 11:00)
Hors ligne
#11 Le 18/12/2014, à 19:43
- Hizoka
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
en effet, la demande étais d'utiliser un wallpaper de maniere aléatoire.
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#12 Le 18/12/2014, à 20:56
- PowaBanga
Re : [Résolut] Changer wallpaper à partir d'une liste de fichiers
Un tout grand merci pour vos réponses, j'ai enfin solutionné mon problème grace à vous deux Hizoka et pingouinux, Un tout grand merci !!!
Wallbox()
{
if [ ! -s "$HOME/Images/wallpapers/liste" ]; then
find $HOME/Images/wallpapers -type f | shuf >> $HOME/Images/wallpapers/liste
fi
gsettings set org.gnome.desktop.background picture-uri "file://$(sed -n 1p "$HOME/Images/wallpapers/liste")"
sed -i 1d "$HOME/Images/wallpapers/liste"
sleep 3
Wallbox
}
Wallbox
Dernière modification par PowaBanga (Le 18/12/2014, à 21:04)
Hors ligne