Commit 09269be5 authored by Benoît Boudaud's avatar Benoît Boudaud

Importation des fichiers

parents
## EXPLICATION DU CODE
- Ligne 3 : variable conditionnelle
- Ligne 4 : variable conditionnelle
- De la ligne 6 à la ligne 20 : Ce bloc d'instructions s'exécute à l'EXTINCTION DE L'ORDINATEUR
grâce au fichier './.config/openbox/menu.xml'
- Ligne 6 : Si la variable 'value' est égale à 1 et que le nom d'hôte de l'ordinateur n'est pas
celui de ma Raspberry, le bloc d'instructions s'exécute.
- Ligne 8 : Grâce à 'sed', nous modifions la valeur contenue dans la variable 'value'.
Nous la faisons passer de 1 à 0 pour que ce soit l'autre bloc d'instructions qui
s'exécute au prochain démarrage de l'ordinateur.
'/Documents/!'permet de modifier uniquement la ligne 3, c'est-à-dire
celle où on ne trouve pas l'occurrence 'Documents' car il ne faut pas modifier les autres 'value='
- Ligne 9 : Je synchronise mon ordinateur avec ma raspberry en téléversant mes répertoires modifiés sur cette dernière.
J'exclue du téléversement, les répertoires cachés (--exclude='.*/')
et le répertoire de ma machine virutelle (--exclude='./VirtualBox VMs')
- De la ligne 11 à la ligne 20 : des fichiers contenus dans le même répertoire sont susceptibles de modifier
la variable conditionnelle 'quit' et par conséquent, d'exécuter tel ou tel bloc d'instructions, à savoir extinction de
l'ordinateur, redémarrage ou déconnexion. Ces fichiers sont 'poweroff.sh', 'reboot.sh' et 'log_out.sh' exécutés par le
fichier './.config/openbox/menu.xml'.
- De la ligne 22 à la ligne 27 : Ce bloc d'instructions s'exécute au DÉMARRAGE DE L'ORDINATEUR
grâce au fichier ~/.config/openbox/autostart
- Ligne 22 : Si la variable 'value' est égale à 1 et que le nom d'hôte de l'ordinateur n'est pas
celui de ma Raspberry, le bloc d'instructions s'exécute.
- Ligne 24 : Ma Raspberry téléverse les répertoires modifiés sur l'ordinateur cible => Synchronisation
- Ligne 25 : Ensuite, grâce à 'sed', nous modifions la valeur contenue dans la variable 'value'.
Nous la faisons passer de 0 à 1 pour que ce soit l'autre bloc d'instructions qui
s'exécute à la prochaine extinction de l'ordinateur.
'/Documents/!'permet de modifier uniquement la ligne 3, c'est-à-dire
celle où on ne trouve pas l'occurrence 'Documents' car il ne faut pas modifier les autres 'value='
- Ligne 26 : Nous réinitialisons la variable 'quit' selon le même principe.
#!/bin/bash
sed -i '/Documents/! s/quit=.*/quit=log_out/' $HOME/Documents/config_files/synchronisation-automatique/rsync.sh
sed -i '/Documents/! s/value=0/value=1/' $HOME/Documents/config_files/synchronisation-automatique/rsync.sh
~/Documents/config_files/synchronisation-automatique/rsync.sh
#!/bin/bash
sed -i "/Documents/! s/quit=.*/quit=poweroff/" $HOME/Documents/config_files/synchronisation-automatique/rsync.sh
sed -i "/Documents/! s/value=0/value=1/" $HOME/Documents/config_files/synchronisation-automatique/rsync.sh
$HOME/Documents/config_files/synchronisation-automatique/rsync.sh
#!/bin/bash
sed -i "/Documents/! s/quit=.*/quit=reboot/" $HOME/Documents/config_files/synchronisation-automatique/rsync.sh
sed -i "/Documents/! s/value=0/value=1/" $HOME/Documents/config_files/synchronisation-automatique/rsync.sh
$HOME/Documents/config_files/synchronisation-automatique/rsync.sh
#!/bin/bash
value=1
quit=
if [ "$value" = 1 ] && ! [[ $(hostname -I) = 192.168.178.25 ]]
then
sed -i "/Documents/! s/value=1/value=0/" $HOME/Documents/config_files/synchronisation-automatique/rsync.sh
rsync -e ssh -av --delete-after --progress --exclude='.*/' --exclude='VirtualBox*' $HOME $USER@192.168.178.25:/home
if [ "$quit" = poweroff ]
then
systemctl poweroff
elif [ "$quit" = reboot ]
then
systemctl reboot
elif [ "$quit" = log_out ]
then
openbox --exit
fi
elif [ "$value" = 0 ] && ! [[ $(hostname -I) = 192.168.178.25 ]]
then
rsync -e ssh -av --delete-after --progress --exclude=".*/" $USER@192.168.178.25:$HOME /home
sed -i "/Documents/! s/value=0/value=1/" $HOME/Documents/config_files/synchronisation-automatique/rsync.sh
sed -i "/Documents/! s/quit=.*/quit=/" $HOME/Documents/config_files/synchronisation-automatique/rsync.sh
fi
: "
EXPLICATION DU CODE
- Ligne 3 : variable conditionnelle
- Ligne 4 : variable conditionnelle
- De la ligne 6 à la ligne 20 : Ce bloc d'instructions s'exécute à l'EXTINCTION DE L'ORDINATEUR
grâce au fichier './.config/openbox/menu.xml'
- Ligne 6 : Si la variable 'value' est égale à 1 et que le nom d'hôte de l'ordinateur n'est pas
celui de ma Raspberry, le bloc d'instructions s'exécute.
- Ligne 8 : Grâce à 'sed', nous modifions la valeur contenue dans la variable 'value'.
Nous la faisons passer de 1 à 0 pour que ce soit l'autre bloc d'instructions qui
s'exécute au prochain démarrage de l'ordinateur.
'/Documents/!'permet de modifier uniquement la ligne 3, c'est-à-dire
celle où on ne trouve pas l'occurrence 'Documents' car il ne faut pas modifier les autres 'value='
- Ligne 9 : Je synchronise mon ordinateur avec ma raspberry en téléversant mes répertoires modifiés sur cette dernière.
J'exclue du téléversement, les répertoires cachés (--exclude='.*/')
et le répertoire de ma machine virutelle (--exclude='./VirtualBox VMs')
- De la ligne 11 à la ligne 20 : des fichiers contenus dans le même répertoire sont susceptibles de modifier
la variable conditionnelle 'quit' et par conséquent, d'exécuter tel ou tel bloc d'instructions, à savoir extinction de
l'ordinateur, redémarrage ou déconnexion. Ces fichiers sont 'poweroff.sh', 'reboot.sh' et 'log_out.sh' exécutés par le
fichier './.config/openbox/menu.xml'.
- De la ligne 22 à la ligne 27 : Ce bloc d'instructions s'exécute au DÉMARRAGE DE L'ORDINATEUR
grâce au fichier ~/.config/openbox/autostart
- Ligne 22 : Si la variable 'value' est égale à 1 et que le nom d'hôte de l'ordinateur n'est pas
celui de ma Raspberry, le bloc d'instructions s'exécute.
- Ligne 24 : Ma Raspberry téléverse les répertoires modifiés sur l'ordinateur cible => Synchronisation
- Ligne 25 : Ensuite, grâce à 'sed', nous modifions la valeur contenue dans la variable 'value'.
Nous la faisons passer de 0 à 1 pour que ce soit l'autre bloc d'instructions qui
s'exécute à la prochaine extinction de l'ordinateur.
'/Documents/!'permet de modifier uniquement la ligne 3, c'est-à-dire
celle où on ne trouve pas l'occurrence 'Documents' car il ne faut pas modifier les autres 'value='
- Ligne 26 : Nous réinitialisons la variable 'quit' selon le même principe.
"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment