4.3 KiB
L'appel de logiciels
Il peut être appelé depuis Bash comme suit:
mon_code="Dir['*'].each { |p| File.rename(p, p.downcase) }"
ruby -e ${mon_code}
- Le script Bash écrit la chaîne de caractère qui contient le code Ruby dans la variable
mon_code
. - Ensuite, il envoie le contenu de
mon_code
à l'interpréteur du langage Ruby
La manipulation de fichiers
comme suit:
pdftk \
page_couverture.pdf \
table_matieres.pdf \
chapitre_1.pdf \
chapitre_2.pdf \
conclusion.pdf \
cat output mon_ebook.pdf
- On lance le logiciel pdftk
- Ensuite, on énumère dans l'ordre tous les fichiers à concaténer
- On spécifie l'action. Le mot cat est souvent utilisé pour la concaténation.
- On spécifie le fichier de sortie après output. Ici, c'est mon_ebook.pdf
Petite note: la barre oblique ** c'est pour couper les lignes pour les rendre plus faciles à lire !
Les tubes
Par exemple, si je veux trouver tous les livres sur le logiciel Spark qui se trouvent dans ma bibliothèque Nextcloud, la commande Bash correspondante prend la forme suivante:
find "nextcloud/Livres" -type f | \
grep -i "voyage|travel"
- Le premier argument de find est le répertoire de recherche, ici c'est
nextcloud/Livres/Technical
. - Le premier paramètre est type, avec comme valeur f, pour rechercher uniquement les fichiers.
- Ensuite, il y a un tube vers la commande grep
- grep a un paramètre, -i qui spécifie que ce qui suit n'est pas sensible à la casse (an anglais case insentitive)
- Enfin, il y a l'expression de recherche voyage|travel qui va retourner tous les noms de fichiers qui contiennent soit le mot voyage, soit le mot travel
cron sur Linux et macOS
Il est aussi possible de mettre le script à exécuter dans un des 4 répertoires suivants
/etc/cron.daily
/etc/cron.hourly
/etc/cron.monthly
/etc/cron.weekly
Le comportement par défaut est d'exécuter le script à chaque minute. Ensuite, si on veut réduire la fréquence, on spécifie à quel moment exécuter le script.
Planificateur de tâches sur Windows
Une fois la commande exécutée, nous obtenons cette réponse:
TaskPath TaskName State
-------- -------- -----
\ cocktail-aleatoire Ready
Tester avant d'exécuter
rsync -av \
--dry-run \
--progress \
--delete \
/source/mondossier \
/destination/mondossier
Fin de l'exécution
Lorsque la commande est terminée, ça va produire un sommaire comme suit:
sent 391,414,597 bytes received 16,270 bytes 46,050,690.24 bytes/sec
total size is 391,253,238 speedup is 1.00
Afin de valider que la sauvegarde est bien réussie, il suffit d'exécuter à nouveau la commande. Si aucun fichier n'est synchronisé, alors c'est le cas !
Sur Windows
Voici le code pour installer cette extension
Install-Module PSWindowsUpdate
Une fois installée,
Nous allons configurer les mises à jour pour qu'elles s'installent chaque jour à 2h du matin.
$action = New-ScheduledTaskAction -Execute 'Get-WindowsUpdate -AcceptAll -Install -AutoReboot'
$trigger = New-ScheduledTaskTrigger -Daily -At 2am
Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "mise-a-jour-nocturne"