<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://www.shadoware.org/index.php/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Shadoware.Org - Tag - script</title>
  <link>http://www.shadoware.org/index.php/</link>
  <atom:link href="http://www.shadoware.org/index.php/feed/tag/script/rss2" rel="self" type="application/rss+xml"/>
  <description>Moi, mes idées, mes logiciels ...</description>
  <language>fr</language>
  <pubDate>Tue, 27 Jul 2010 05:56:41 +0200</pubDate>
  <copyright>Ulrich VANDENHEKKE</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Sauvegarde automatique 0.9</title>
    <link>http://www.shadoware.org/index.php/post/2006/10/16/20-script-de-sauvegarde-automatique</link>
    <guid isPermaLink="false">urn:md5:035f32068eb22c5626453fd612ea6b00</guid>
    <pubDate>Mon, 16 Oct 2006 10:11:00 +0000</pubDate>
    <dc:creator>Ulrich Van Den Hekke</dc:creator>
        <category>Logiciels libres</category>
        <category>backup</category><category>network</category><category>planet</category><category>script</category><category>usb</category>    
    <description>&lt;p&gt;Ce billet concerne une application, de mon cru, écrite en &lt;code&gt;bash&lt;/code&gt;.&lt;/p&gt;


&lt;p&gt;Elle utilise l'application &lt;code&gt;dar&lt;/code&gt; pour effectuer des sauvegardes et les copier sur un périphérique USB ou/et sur le réseau.
Tous les patchs, corrections, améliorations sont les bienvenues sur cette application maison.&lt;/p&gt;


&lt;p&gt;Pour fonctionner l'application se configure à l'aide d'un fichier du dossier &lt;code&gt;/etc&lt;/code&gt; qui permet de déterminer une liste de dossier à sauvegarder (&lt;code&gt;/etc/autobackup&lt;/code&gt;). Dans ce fichier, on y défini le dossier à sauvegarde, le dossier de destination, le nombre de sauvegarde incrémentale (ou dit d'une autre facon, au bout de combien fois faut-il créer une nouvelle sauvegarde compléte?).&lt;/p&gt;


&lt;p&gt;Il permet aussi de définir des points de copie où l'on place les différentes sauvegardes. (Ex: un périphérique USB, un dossier SSH).
Ces points sont, bien sûr, utilisés seulement s'ils existent. Le fichier est copié sur le périphérique USB, s'il est branché, sur la machine distante si elle est allumée, ....&lt;/p&gt;



&lt;p&gt;Il ne reste plus qu'à configurer ces petits scripts et les mettre dans un cron&lt;/p&gt;    &lt;h3&gt;Contenu exemple du fichier de configuration&lt;/h3&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# This config file make relation for backup&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Options&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_OPT=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;-v -s 4613734400 -D -z9 -m 150&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_EXCLUDE_EXT=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;-Z *.avi -Z *.bz2 -Z *.gif -Z *.gz -Z *.jpg -Z *.mov -Z *.mpg -Z *.pbm -Z *.pdf -Z *.png -Z *.pnm -Z *.Z -Z *.zip&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_EXCLUDE_PATH=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;-P phoenix/.bogofilter -P phoenix/.fonts -P phoenix/.kde/cache-maxiding -P phoenix/.kde/socket-maxiding -P phoenix/.kde/tmp-maxiding -P phoenix/.spamassassin -P phoenix/.thumbnails -P phoenix/.turboprint -P phoenix/.unison -P phoenix/.wesnoth -P phoenix/.widelands -P phoenix/.wine* -P phoenix/usr -P phoenix/virtuel -P .Trash-* -P phoenix/tmp&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Copy Backup&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;COPYTO=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;usbdrive network&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Copy to usb drive&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;usbdrive_type=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;usb&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;usbdrive_dev=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;/dev/usb/disk1&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;usbdrive_mountpoint=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;/media/disque/&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;usbdrive_pathname=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;backup/&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Copy to network&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;network_type=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;net&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;network_host=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;miniding&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;network_user=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;phoenix&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# no network_pass : use ssh key for backup&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;network_dir=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;/home/phoenix/backup&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Home&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;home_name=&lt;/span&gt;maxiding_home
&lt;span style=&quot;color: #007800;&quot;&gt;home_source=&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;home&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;home_destination=&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;gravure&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dar&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;home&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;home_inc_max=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;10&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Etc&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;etc_name=&lt;/span&gt;maxiding_etc
&lt;span style=&quot;color: #007800;&quot;&gt;etc_source=&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;etc&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;etc_destination=&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;gravure&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dar&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;etc&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;etc_inc_max=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;10&lt;/span&gt;&lt;/pre&gt;


&lt;h3&gt;Sauvegarde automatique&lt;/h3&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#!/bin/sh&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#############################################################################&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   Copyright (C) 2006 by Ulrich Van Den Hekke                            ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   ulrich.vdh@free.fr                                                    ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##                                                                         ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   This program is free software; you can redistribute it and/or modify  ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   it under the terms of the GNU General Public License as published by  ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   the Free Software Foundation; either version 2 of the License, or     ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   (at your option) any later version.                                   ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##                                                                         ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# /var &lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   This program is distributed in the hope that it will be useful,       ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   but WITHOUT ANY WARRANTY; without even the implied warranty of        ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   GNU General Public License for more details.                          ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##                                                                         ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   You should have received a copy of the GNU General Public License     ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   along with this program; if not, write to the                         ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   Free Software Foundation, Inc.,                                       ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#############################################################################&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -e &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;etc&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;autobackup &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
    . &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;etc&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;autobackup
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Please configure the autobackup config file&amp;quot;&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;exit&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$#&lt;/span&gt; -ne &lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Please specify a project to backup&amp;quot;&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;exit&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;2&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Define name of variable to use&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;var_name=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;$1_name&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;var_source=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;$1_source&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;var_destination=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;$1_destination&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;var_inc_max=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;$1_inc_max&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Define content of variable for the project&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_SRC=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_source&lt;/span&gt;`
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_DST=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_destination&lt;/span&gt;`
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_NAME=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_name&lt;/span&gt;`
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_INCREMENTAL_MAX=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_inc_max&lt;/span&gt;`
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -z &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$BACKUP_NAME&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Project undefined&amp;quot;&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;exit&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;3&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_BIN=&lt;/span&gt;dar
&lt;span style=&quot;color: #007800;&quot;&gt;DATE_BACKUP=&lt;/span&gt;`&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;date&lt;/span&gt; +&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;%&lt;/span&gt;Y&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;%&lt;/span&gt;m&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;%&lt;/span&gt;d`
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_ARCHIVE=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;${BACKUP_NAME}_${DATE_BACKUP}&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# From config file&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# COUNT_INCREMENTAL_BACKUP&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# LAST_BACKUP&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# LAST_COMPLETE_BACKUP&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Some options&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# -v verbose&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# -c archive name&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# -R root place&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# -s slice size&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# -p slice pause&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# -D backup empty dir&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# -z9 compression gzip level 9&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# -m for minimal size&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# -Z exclude from compression&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# -P exclude file&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; start_backup&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Backup of $BACKUP_SRC in progress ...&amp;quot;&lt;/span&gt;
&amp;nbsp;
    &lt;span style=&quot;color: #007800;&quot;&gt;$BACKUP_BIN&lt;/span&gt; -c &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_ARCHIVE&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt; -R &lt;span style=&quot;color: #007800;&quot;&gt;$BACKUP_SRC&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$BACKUP_OPT&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$BACKUP_EXCLUDE_EXT&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$BACKUP_EXCLUDE_PATH&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_NAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;.log
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; load_backup_config&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; -n &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Load config file ... &amp;quot;&lt;/span&gt;
&amp;nbsp;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -e &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_NAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;.config &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
        . &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_NAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;.config
        &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;loaded.&amp;quot;&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
        &lt;span style=&quot;color: #007800;&quot;&gt;COUNT_INCREMENTAL_BACKUP=&lt;/span&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$BACKUP_INCREMENTAL_MAX&lt;/span&gt;
        &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;not found&amp;quot;&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; save_backup_config&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Save backup config file ...&amp;quot;&lt;/span&gt;
&amp;nbsp;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;COUNT_INCREMENTAL_BACKUP=$COUNT_INCREMENTAL_BACKUP&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_NAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;.config
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;LAST_BACKUP=$DATE_BACKUP&amp;quot;&lt;/span&gt;                          &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_NAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;.config
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;LAST_COMPLETE_BACKUP=$LAST_COMPLETE_BACKUP&amp;quot;&lt;/span&gt;        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_NAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;.config
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; define_incremental&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;There is $COUNT_INCREMENTAL_BACKUP on $BACKUP_INCREMENTAL_MAX&amp;quot;&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$COUNT_INCREMENTAL_BACKUP&lt;/span&gt; -lt &lt;span style=&quot;color: #007800;&quot;&gt;$BACKUP_INCREMENTAL_MAX&lt;/span&gt;  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
        &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Backup is incremental from $LAST_COMPLETE_BACKUP&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #007800;&quot;&gt;COUNT_INCREMENTAL_BACKUP=&lt;/span&gt;`&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;expr&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$COUNT_INCREMENTAL_BACKUP&lt;/span&gt; + &lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt;`
        &lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_OPT=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;-A ${BACKUP_DST}${BACKUP_NAME}_${LAST_COMPLETE_BACKUP} ${BACKUP_OPT}&amp;quot;&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
        &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Backup is complete&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #007800;&quot;&gt;COUNT_INCREMENTAL_BACKUP=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt;
        &lt;span style=&quot;color: #007800;&quot;&gt;LAST_COMPLETE_BACKUP=&lt;/span&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$DATE_BACKUP&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
load_backup_config;
define_incremental;
start_backup;
save_backup_config;&lt;/pre&gt;


&lt;h3&gt;Copie automatique&lt;/h3&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#!/bin/sh&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#############################################################################&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   Copyright (C) 2006 by Ulrich Van Den Hekke                            ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   ulrich.vdh@free.fr                                                    ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##                                                                         ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   This program is free software; you can redistribute it and/or modify  ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   it under the terms of the GNU General Public License as published by  ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   the Free Software Foundation; either version 2 of the License, or     ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   (at your option) any later version.                                   ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##                                                                         ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   This program is distributed in the hope that it will be useful,       ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   but WITHOUT ANY WARRANTY; without even the implied warranty of        ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   GNU General Public License for more details.                          ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##                                                                         ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   You should have received a copy of the GNU General Public License     ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   along with this program; if not, write to the                         ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   Free Software Foundation, Inc.,                                       ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;##   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             ##&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#############################################################################&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -e &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;etc&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;autobackup &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
    . &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;etc&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;autobackup
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Please configure the autobackup config file&amp;quot;&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;exit&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$#&lt;/span&gt; -ne &lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Please specify a project to backup&amp;quot;&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;exit&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;2&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Define name of variable to use&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;var_name=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;$1_name&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;var_source=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;$1_source&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;var_destination=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;$1_destination&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;var_inc_max=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;$1_inc_max&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# Define content of variable for the project&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_SRC=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_source&lt;/span&gt;`
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_DST=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_destination&lt;/span&gt;`
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_NAME=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_name&lt;/span&gt;`
&lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_INCREMENTAL_MAX=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_inc_max&lt;/span&gt;`
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -z &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$BACKUP_NAME&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Project undefined&amp;quot;&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;exit&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;3&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# From config file&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# COUNT_INCREMENTAL_BACKUP&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# LAST_BACKUP&lt;/span&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;# LAST_COMPLETE_BACKUP&lt;/span&gt;
&amp;nbsp;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; load_backup_config&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; -n &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Load config file ... &amp;quot;&lt;/span&gt;
&amp;nbsp;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -e &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_NAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;.config &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
        . &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_NAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;.config
&amp;nbsp;
        &lt;span style=&quot;color: #007800;&quot;&gt;BACKUP_ARCHIVE=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;${BACKUP_NAME}_${LAST_BACKUP}&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;loaded.&amp;quot;&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
        &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;not found&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;exit&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;4&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; save_by_network&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; -n &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Save on computer $HOST as $USER on $DIR&amp;quot;&lt;/span&gt;
&amp;nbsp;
    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;ping&lt;/span&gt; -c &lt;span style=&quot;color: #000000;&quot;&gt;3&lt;/span&gt; -W &lt;span style=&quot;color: #000000;&quot;&gt;10&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$HOST&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;null
&amp;nbsp;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$?&lt;/span&gt; -ne &lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt; 
        &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;failed&amp;quot;&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
        &lt;span style=&quot;color: #007800;&quot;&gt;DESTINATION=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;${HOST}:${DIR}&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -n &lt;span style=&quot;color: #007800;&quot;&gt;$USER&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
            &lt;span style=&quot;color: #007800;&quot;&gt;DESTINATION=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;${USER}@${DESTINATION}&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
        &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;scp&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_ARCHIVE&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$DESTINATION&lt;/span&gt;
&amp;nbsp;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$?&lt;/span&gt; -ne &lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt; 
            &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;failed&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
            &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ok&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; save_by_usb&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; -n &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Save on drive $DEV &amp;quot;&lt;/span&gt;
&amp;nbsp;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -e &lt;span style=&quot;color: #007800;&quot;&gt;$DEV&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
        &lt;span style=&quot;color: #007800;&quot;&gt;TOUMOUNT=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt;
        &lt;span style=&quot;color: #007800;&quot;&gt;LINECOUNT=&lt;/span&gt;`&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;mount&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;grep&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$DEV&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;cut&lt;/span&gt; -f &lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt; -d\  &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;wc&lt;/span&gt; -l `
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$LINECOUNT&lt;/span&gt; -gt &lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
            &lt;span style=&quot;color: #007800;&quot;&gt;MOUNTPOINT=&lt;/span&gt;`&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;mount&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;grep&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$DEV&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;cut&lt;/span&gt; -f &lt;span style=&quot;color: #000000;&quot;&gt;3&lt;/span&gt; -d\ `
            &lt;span style=&quot;color: #007800;&quot;&gt;TOUMOUNT=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
            &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;mount&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$MOUNTPOINT&lt;/span&gt;
&amp;nbsp;
            &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$?&lt;/span&gt; -ne &lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
                &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;mount failed &amp;quot;&lt;/span&gt;
            &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -d &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;MOUNTPOINT&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;PATHNAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
            &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;for&lt;/span&gt; FILE &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;in&lt;/span&gt; `&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;ls&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;-1&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_DST&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;BACKUP_ARCHIVE&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;` ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;do&lt;/span&gt;
                &lt;span style=&quot;color: #007800;&quot;&gt;FILENAME=&lt;/span&gt;`&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;basename&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$FILE&lt;/span&gt;` 
                &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -e &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;MOUNTPOINT&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;PATHNAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;FILENAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
                    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;exist &amp;quot;&lt;/span&gt;
                &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
                    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;cp&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;FILE&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;MOUNTPOINT&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;PATHNAME&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt;&gt;
                &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
            &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;done&lt;/span&gt;
&amp;nbsp;
            &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ok&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
            &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;failed&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$TOUMOUNT&lt;/span&gt; -eq &lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
            &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;umount&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$MOUNTPOINT&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&amp;nbsp;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
        &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;device not found&amp;quot;&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; copy_to&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Start make copy of backup $BACKUP_NAME&amp;quot;&lt;/span&gt;
&amp;nbsp;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;for&lt;/span&gt; NAME &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;in&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$COPYTO&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;do&lt;/span&gt;
        &lt;span style=&quot;color: #007800;&quot;&gt;var_type=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;${NAME}_type&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #007800;&quot;&gt;TYPE=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_type&lt;/span&gt;`
&amp;nbsp;
        &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;--&amp;gt; $NAME as $TYPE&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$TYPE&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;in&lt;/span&gt;
            &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;usb&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
                &lt;span style=&quot;color: #007800;&quot;&gt;var_dev=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;${NAME}_dev&amp;quot;&lt;/span&gt;
                &lt;span style=&quot;color: #007800;&quot;&gt;DEV=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_dev&lt;/span&gt;`
&amp;nbsp;
                &lt;span style=&quot;color: #007800;&quot;&gt;var_mountpoint=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;${NAME}_mountpoint&amp;quot;&lt;/span&gt;
                &lt;span style=&quot;color: #007800;&quot;&gt;MOUNTPOINT=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_mountpoint&lt;/span&gt;`
&amp;nbsp;
                &lt;span style=&quot;color: #007800;&quot;&gt;var_pathname=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;${NAME}_pathname&amp;quot;&lt;/span&gt;
                &lt;span style=&quot;color: #007800;&quot;&gt;PATHNAME=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_pathname&lt;/span&gt;`
&amp;nbsp;
                save_by_usb;
            &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
&amp;nbsp;
            &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;net&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
                &lt;span style=&quot;color: #007800;&quot;&gt;var_host=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;${NAME}_host&amp;quot;&lt;/span&gt;
                &lt;span style=&quot;color: #007800;&quot;&gt;HOST=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_host&lt;/span&gt;`
&amp;nbsp;
                &lt;span style=&quot;color: #007800;&quot;&gt;var_user=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;${NAME}_user&amp;quot;&lt;/span&gt;
                &lt;span style=&quot;color: #007800;&quot;&gt;USER=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_user&lt;/span&gt;`
&amp;nbsp;
                &lt;span style=&quot;color: #007800;&quot;&gt;var_dir=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\$&lt;/span&gt;${NAME}_dir&amp;quot;&lt;/span&gt;
                &lt;span style=&quot;color: #007800;&quot;&gt;DIR=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$var_dir&lt;/span&gt;`
&amp;nbsp;
                save_by_network;
            &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;esac&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;done&lt;/span&gt;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
copy_to;&lt;/pre&gt;</description>
    
    
    
          <comments>http://www.shadoware.org/index.php/post/2006/10/16/20-script-de-sauvegarde-automatique#comment-form</comments>
      <wfw:comment>http://www.shadoware.org/index.php/post/2006/10/16/20-script-de-sauvegarde-automatique#comment-form</wfw:comment>
      <wfw:commentRss>http://www.shadoware.org/index.php/feed/atom/comments/19</wfw:commentRss>
      </item>
    
  <item>
    <title>Script Linux</title>
    <link>http://www.shadoware.org/index.php/post/2006/08/20/18-script-linux</link>
    <guid isPermaLink="false">urn:md5:f51296c9324ce77850255f0210dd08be</guid>
    <pubDate>Sun, 20 Aug 2006 10:45:00 +0000</pubDate>
    <dc:creator>Ulrich Van Den Hekke</dc:creator>
        <category>Logiciels libres</category>
        <category>debian</category><category>planet</category><category>script</category>    
    <description>&lt;p&gt;Ce billet est consacré au script Linux. J'ai écrit divers script pour &quot;automatiser&quot; certaines commandes, &lt;em&gt;même si je dois exécuter ces scripts manuellement&lt;/em&gt;. Je pourrais, quand bien même, appeler ces scripts dans un &lt;code&gt;cron&lt;/code&gt; si je le souhaitais.&lt;/p&gt;


&lt;p&gt;Vous trouverez, donc, dans la suite, différents scripts, différentes idées, à améliorer, à récupérer.&lt;/p&gt;    &lt;h3&gt;Liste des paquets&lt;/h3&gt;


&lt;p&gt;Ce script permet de lister les paquets installés sur un système GNU\Debian. Cela me permet de récupérer une liste de paquet dans un fichier, liste que je peux réutiliser dans un logiciel comme synaptic pour installer les mêmes paquets sur une autre distribution.
Couplé à une sauvegarde du dossier home et du dossier etc, le script permet de pouvoir réinstaller un système à l'identique (à condition que l'on ne se trouve pas sur &lt;em&gt;unstable&lt;/em&gt; et moyennant le dossier &lt;code&gt;/var&lt;/code&gt;.&lt;/p&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #007800;&quot;&gt;liste=&lt;/span&gt;`dpkg -l &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;tail&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;+6&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;cut&lt;/span&gt; -d\  -f3`
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;for&lt;/span&gt; i &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;in&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$liste&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;do&lt;/span&gt;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$i        install&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;done&lt;/span&gt;&lt;/pre&gt;



&lt;p&gt;&lt;ins&gt;La commande &lt;code&gt;dpkg --get-selections&lt;/code&gt; peut très bien remplacer le script ci-dessus. Merci à &lt;em&gt;mx&lt;/em&gt; pour sa remarque.&lt;/ins&gt;&lt;/p&gt;


&lt;h3&gt;Purge des paquets&lt;/h3&gt;


&lt;p&gt;Permet de purger les paquets supprimés d'une distribution GNU\Debian. Cela permet de supprimer les quelques fichiers inutiles lors de la suppression de paquet GNU\Debian. Néanmoins, parfois on ne veut pas faire les purges.&lt;/p&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;for&lt;/span&gt; i &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;in&lt;/span&gt; `dpkg -l &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;grep&lt;/span&gt; -e &lt;span style=&quot;color: #ff0000;&quot;&gt;'^rc.*'&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;cut&lt;/span&gt; -f3 -d\ ` ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;do&lt;/span&gt; dpkg -P &lt;span style=&quot;color: #007800;&quot;&gt;$i&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;done&lt;/span&gt;&lt;/pre&gt;


&lt;h3&gt;Sécurisation des données&lt;/h3&gt;


&lt;p&gt;Permet de monter une partition démontée et démonter une partition montée. Ce script est basé sur KDialog pour demander les informations, il nécessite donc KDE (mais je pense qu'il est possible de le réécrire pour Gnome).
On lui passe en paramètre le nom d'un périphérique. Il suppose que la partition démontée est un volume logique (sous LVM) dont le groupe est GNU\Debian et dont le nom est &lt;code&gt;$DISK-close&lt;/code&gt;. Il crée à la suite le &lt;em&gt;device-mapper&lt;/em&gt; (en supposant qu'il a été créé à l'aide de &lt;em&gt;LUKS&lt;/em&gt;) du nom de &lt;code&gt;$DISK-open&lt;/code&gt;.
S'il trouve ce &quot;device-mapper'', il le démonte et le supprime.&lt;/p&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#!/bin/sh&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #007800;&quot;&gt;DISK=&lt;/span&gt;$&lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;DISKOPEN=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$DISK-open&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;DISKCLOSE=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$DISK-close&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -e &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;mapper&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$DISKOPEN&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;umount&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;mapper&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$DISKOPEN&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;null
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$?&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;!&lt;/span&gt;= &lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
        &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;kdialog&lt;/span&gt; --title KSecure --error &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Impossible de démonter le péripherique $DISK&amp;quot;&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -e &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;mapper&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$DISKOPEN&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;sbin&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;cryptsetup luksClose &lt;span style=&quot;color: #007800;&quot;&gt;$DISKOPEN&lt;/span&gt;
                &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;kdialog&lt;/span&gt; --title KSecure --msgbox &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Suppression du péripherique $DISK accomplie&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
    &lt;span style=&quot;color: #007800;&quot;&gt;password=&lt;/span&gt;`&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;kdialog&lt;/span&gt; --title KSecure --password &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Cle de déchiffrement de $DISK&amp;quot;&lt;/span&gt;`
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -z &lt;span style=&quot;color: #007800;&quot;&gt;$password&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
        &lt;span style=&quot;color: #007800;&quot;&gt;password=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;nopassword&amp;quot;&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$password&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; \
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;sbin&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;cryptsetup luksOpen &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;debian&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$DISKCLOSE&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$DISKOPEN&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;null
    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;mount&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;mapper&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$DISKOPEN&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;null
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$?&lt;/span&gt; -ne  &lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
                &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;kdialog&lt;/span&gt; --title KSecure --error &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Clé incorrecte&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;&lt;/pre&gt;


&lt;h3&gt;Apprentissage du spam&lt;/h3&gt;


&lt;p&gt;Permet d'appeler bogofliter et spamassassin sur une liste de message Indésirable au format mbox. Il permet aussi de faire l'apprentissage des messages désirables.&lt;/p&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#!/bin/bash&lt;/span&gt;
&amp;nbsp;
sa-learn -L --no-&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sync&lt;/span&gt; --spam --mbox &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;home&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;phoenix&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;Mail&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;Indésirable\ \&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;Spam\&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
sa-learn -L --no-&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sync&lt;/span&gt; --ham --mbox &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;home&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;phoenix&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;Mail&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;Désirable\ \&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;Non\ spam\&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
bogofilter -N -s &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;home&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;phoenix&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;Mail&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;Indésirable\ \&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;Spam\&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
bogofilter -S -n &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;home&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;phoenix&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;Mail&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;Désirable\ \&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#40;&lt;/span&gt;Non\ spam\&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;/pre&gt;


&lt;h3&gt;Création de lien&lt;/h3&gt;


&lt;p&gt;Permet à partir d'une liste de fichier identique générée par &lt;em&gt;fdupes&lt;/em&gt; de créer des liens physiques entre les fichiers pour économiser de la place. Attention&amp;nbsp;: si un des fichiers physiques est modifié, l'autre le sera aussi.&lt;/p&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#!/bin/sh&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; -n &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;|&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;read&lt;/span&gt; -r line
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;while&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$?&lt;/span&gt; -eq &lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;do&lt;/span&gt;
    &lt;span style=&quot;color: #007800;&quot;&gt;line=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$line&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sed&lt;/span&gt; -e &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;s/&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\\&lt;/span&gt;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\\&lt;/span&gt;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\\&lt;/span&gt; /@/g&amp;quot;&lt;/span&gt;`
    &lt;span style=&quot;color: #007800;&quot;&gt;index=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt;
    &lt;span style=&quot;color: #007800;&quot;&gt;principal=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;for&lt;/span&gt; chemin &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;in&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$line&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;do&lt;/span&gt; 
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$index&lt;/span&gt; -eq &lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
            &lt;span style=&quot;color: #007800;&quot;&gt;principal=&lt;/span&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$chemin&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;else&lt;/span&gt;
            &lt;span style=&quot;color: #007800;&quot;&gt;a=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$principal&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sed&lt;/span&gt; -e &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;s/@/&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\\&lt;/span&gt; /g&amp;quot;&lt;/span&gt;` 
            &lt;span style=&quot;color: #007800;&quot;&gt;b=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$chemin&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sed&lt;/span&gt; -e &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;s/@/&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\\&lt;/span&gt; /g&amp;quot;&lt;/span&gt;` 
            &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;ln&lt;/span&gt; -f &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$a&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$b&amp;quot;&lt;/span&gt;
        &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&amp;nbsp;
        &lt;span style=&quot;color: #007800;&quot;&gt;index=&lt;/span&gt;`&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;expr&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$index&lt;/span&gt; + &lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt;`
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;done&lt;/span&gt;
&amp;nbsp;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; -n &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;=&amp;quot;&lt;/span&gt;
&amp;nbsp;
    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;read&lt;/span&gt; -r line
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;done&lt;/span&gt;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; -n &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;|&amp;quot;&lt;/span&gt;&lt;/pre&gt;


&lt;h3&gt;Renumérotation&lt;/h3&gt;


&lt;p&gt;Permet de renuméroté une liste d'image d'un dossier, du style &lt;code&gt;1 10 11 12 13 2 3 4...&lt;/code&gt; en une suite précédé d'un &lt;code&gt;0&lt;/code&gt;&amp;nbsp;: &lt;code&gt;01 02 03 04 05 06 ...&lt;/code&gt;&lt;/p&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#!/bin/sh&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;for&lt;/span&gt; DIR &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;in&lt;/span&gt; `&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;ls&lt;/span&gt;` ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;do&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; -n &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Change directory $DIR &amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;cd&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$DIR&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #007800;&quot;&gt;CMD=&lt;/span&gt;`&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;ls&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sed&lt;/span&gt; -e &lt;span style=&quot;color: #ff0000;&quot;&gt;'s/&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\(&lt;/span&gt;.*&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\)&lt;/span&gt;_&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\(&lt;/span&gt;[1-9]&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\)&lt;/span&gt;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\.&lt;/span&gt;jpg/mv &lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\1&lt;/span&gt;_&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\2&lt;/span&gt;.jpg &lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\1&lt;/span&gt;_0&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\2&lt;/span&gt;.jpg ;/g'&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;grep&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;mv &amp;quot;&lt;/span&gt;`
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;eval&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$CMD&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;cd&lt;/span&gt; ..
&amp;nbsp;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Ok&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;done&lt;/span&gt;&lt;/pre&gt;


&lt;h3&gt;Génération de playlist&lt;/h3&gt;


&lt;p&gt;Permet de générer une playlist sur un dossier pour utilisation avec le logiciel kpf (par exemple) de KDE. Il parcourt l'ensemble des dossiers et crée un fichier &lt;em&gt;m3u&lt;/em&gt; à chaque fois qu'il trouve un fichier multimédia. Il remplace le début du dossier par un lien &lt;em&gt;http&lt;/em&gt;.
Je rajoute qu'il existe un très bon site contenant de la musique &lt;strong&gt;libre&lt;/strong&gt;&amp;nbsp;: &lt;a href=&quot;http://www.jamendo.org/fr/&quot; hreflang=&quot;fr&quot;&gt;Jamendo&lt;/a&gt;.&lt;/p&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#!/bin/sh&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #007800;&quot;&gt;OLD=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;pwd&lt;/span&gt;`
&amp;nbsp;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;cd&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$1&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$?&lt;/span&gt; -ne &lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt; 
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;exit&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #007800;&quot;&gt;THIS=&lt;/span&gt;`&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;pwd&lt;/span&gt;`
&lt;span style=&quot;color: #007800;&quot;&gt;BASE=&lt;/span&gt;`&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;basename&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$THIS&amp;quot;&lt;/span&gt;`
&amp;nbsp;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Ouverture de $BASE&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;for&lt;/span&gt; path &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;in&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;do&lt;/span&gt; 
  &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; -d &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$THIS/$path&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt; 
    $&lt;span style=&quot;color: #000000;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;$THIS/$path&amp;quot;&lt;/span&gt;
  &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;done&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Traitement de $BASE&amp;quot;&lt;/span&gt;
&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;rm&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$BASE&lt;/span&gt;.m3u &lt;span style=&quot;color: #000000;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;null
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;for&lt;/span&gt; path &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;in&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;.mp3 &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;.ogg &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;.wma &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;.avi ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;do&lt;/span&gt; 
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$path&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;grep&lt;/span&gt; \&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;dev&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;null 
  &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$?&lt;/span&gt; -eq &lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
    &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$THIS&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #007800;&quot;&gt;$path&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;|&lt;/span&gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sed&lt;/span&gt; -e &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;s/&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\/&lt;/span&gt;media&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\/&lt;/span&gt;music/http&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\:&lt;/span&gt;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\/&lt;/span&gt;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\/&lt;/span&gt;192&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\.&lt;/span&gt;168&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\.&lt;/span&gt;101&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\.&lt;/span&gt;7&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\:&lt;/span&gt;8001/g&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$BASE&lt;/span&gt;.m3u
  &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;done&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Sortie de $BASE&amp;quot;&lt;/span&gt;&lt;/pre&gt;


&lt;h3&gt;Script pour gérer les documents latex&lt;/h3&gt;


&lt;p&gt;Ce script date de quelques temps quand je devais générer des documents différents à partir d'un même document &lt;em&gt;LaTeX&lt;/em&gt;.
Il utilise différentes commandes pour cela, et permet aussi de nettoyer le dossier. Une sorte de &lt;em&gt;Makefile&lt;/em&gt; à la mode &lt;em&gt;bash&lt;/em&gt;.&lt;/p&gt;

&lt;pre class=&quot;bash&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;#!/bin/sh&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$#&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;!&lt;/span&gt;= &lt;span style=&quot;color: #000000;&quot;&gt;2&lt;/span&gt; &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; ; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;then&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;echo&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Il faut le nom du fichier et de la sortie&amp;quot;&lt;/span&gt;
  &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;exit&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt;;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;fi&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #007800;&quot;&gt;NAME=&lt;/span&gt;$&lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt;
&lt;span style=&quot;color: #007800;&quot;&gt;DEST=&lt;/span&gt;$&lt;span style=&quot;color: #000000;&quot;&gt;2&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$DEST&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;in&lt;/span&gt;
  cleanPDF&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt; 
    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;rm&lt;/span&gt; -f &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.pdf &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  cleanTXT&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;rm&lt;/span&gt; -f &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.txt &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  cleanPS&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;rm&lt;/span&gt; -f &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;ps&lt;/span&gt;  &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  cleanDVI&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;rm&lt;/span&gt; -f &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.dvi &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  cleanHTML&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;rm&lt;/span&gt; -f &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.html &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  cleanTEX&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;rm&lt;/span&gt; -f &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;.log &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;.toc &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;.htoc &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;.aux &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;.haux &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;~ &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  clean&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanTEX
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanDVI
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanPS
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanTXT
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanPDF
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanHTML &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  mrproper&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; clean &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  _dvi&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    pslatex &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.tex
    pslatex &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.tex &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  xdvi&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; _dvi
    xdvi &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.dvi &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  dvi&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; _dvi
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanTEX &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  _html&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    hevea -francais -fix -noiso &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.tex &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  html&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; _html
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanTEX &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  _txt&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    hevea -francais -fix -text &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.tex &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  txt&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; _txt
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanTEX &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  _ps&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; _dvi
    dvips -Ppdf &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.dvi &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;ps&lt;/span&gt;&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; _ps
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanDVI
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanTEX &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  _pdf&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    pdflatex &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.tex
    pdflatex &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt;.tex &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
  pdf&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#41;&lt;/span&gt;
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; _pdf
    glatex.&lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;sh&lt;/span&gt; &lt;span style=&quot;color: #007800;&quot;&gt;$NAME&lt;/span&gt; cleanTEX &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;;;&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;esac&lt;/span&gt;&lt;/pre&gt;</description>
    
    
    
          <comments>http://www.shadoware.org/index.php/post/2006/08/20/18-script-linux#comment-form</comments>
      <wfw:comment>http://www.shadoware.org/index.php/post/2006/08/20/18-script-linux#comment-form</wfw:comment>
      <wfw:commentRss>http://www.shadoware.org/index.php/feed/atom/comments/17</wfw:commentRss>
      </item>
    
</channel>
</rss>