Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
ateliers:lignedecommande [2018/10/07 15:28] – sakasama | ateliers:lignedecommande [2019/10/07 21:43] (Version actuelle) – sakasama |
---|
| |
Un script tout mignon qui fait des cœurs colorés aléatoirement : | Un script tout mignon qui fait des cœurs colorés aléatoirement : |
while [ 1 ] # Lance une boucle (litéralement, « tant que 1 est vrai » | while [ 1 ] # Lance une boucle |
R=$(shuf -i 30-36 -n 1) # Met dans la variable R un chiffre pseudo aléatoire entre 30 et 36 | R=$(shuf -i 30-36 -n 1) # Met dans la variable R un chiffre pseudo aléatoire entre 30 et 36 |
do echo -ne "\033[$((R))m? " # Affiche un cœur, puis un espace. Possibilité de retirer cet espace pour rapprocher les cœurs ! | do echo -ne "\033[$((R))m♥ " # Affiche un cœur, puis un espace. Possibilité de retirer cet espace pour rapprocher les cœurs ! |
# -ne ? n ? indique qu'on reste à la ligne | # -ne ⇒ n → indique qu'on reste à la ligne |
# e ? indique qu'on accepte la syntaxe de changement d'affichage du texte dans le terminal | # e → indique qu'on accepte la syntaxe de changement d'affichage du texte dans le terminal |
# "\033[$((R))m ? modifie l'affichage du texte qui va suivre. Ici, ((R)) est la variable aléatoire générée juste avant | # "\033[$((R))m ⇒ modifie l'affichage du texte qui va suivre. Ici, ((R)) est la variable aléatoire générée juste avant |
sleep 0.05 # Met un délai temporel entre chaque cœur. Attention, sans délai, le script peut vider rapidement une batterie ! | sleep 0.05 # Met un délai temporel entre chaque cœur. Attention, sans délai, le script peut vider rapidement une batterie ! |
done # indique la fin de la boucle | done # indique la fin de la boucle |
| |
| |
rainbow cursor worm (pris tel quel sur le net : je ne comprends pas comment ça marche) | rainbow cursor worm (pris tel quel sur le net : je ne comprends pas comment ça marche) |
a=1;x=1;y=1;xd=1;yd=1;while true;do if [[ $x == $LINES || $x == 0 ]]; then xd=$(( $xd *-1 )) ; fi ; if [[ $y == $COLUMNS || $y == 0 ]]; then yd=$(( $yd * -1 )) ; fi ; x=$(( $x + $xd )); y=$(( $y + $yd )); printf "\33[%s;%sH\33[48;5;%sm \33[0m" $x $y $(($a%199+16)) ;a=$(( $a + 1 )) ; sleep 0.001 ;done | a=1;x=1;y=1;xd=1;yd=1;while true;do if [[ $x == $LINES || $x == 0 ]]; then xd=$(( $xd *-1 )) ; fi ; if [[ $y == $COLUMNS || $y == 0 ]]; then yd=$(( $yd * -1 )) ; fi ; x=$(( $x + $xd )); y=$(( $y + $yd )); printf "\33[%s;%sH\33[48;5;%sm \33[0m" $x $y $(($a%199+16)) ;a=$(( $a + 1 )) ; sleep 0.001 ;done |
| |
"screensaver" du terminal (récupéré comme le précédent sur une vieille version de climagic) | "screensaver" du terminal (récupéré comme le précédent sur une vieille version de climagic) |
j=0;a=1;x=1;y=1;xd=1;yd=1;while true;do for i in {1..2000} ; do if [[ $x == $LINES || $x == 0 ]]; then xd=$(( $xd *-1 )) ; fi ; if [[ $y == $COLUMNS || $y == 0 ]]; then yd=$(( $yd * -1 )) ; fi ; x=$(( $x + $xd )); y=$(( $y + $yd )); printf "\33[%s;%sH\33[48;5;%sm . \33[0m" $x $y $(( $a % 8 + 16 + $j % 223 )) ;a=$(( $a + 1 )) ; done ; x=$(( x%$COLUMNS + 1 )) ; j=$(( $j + 8 )) ;done | j=0;a=1;x=1;y=1;xd=1;yd=1;while true;do for i in {1..2000} ; do if [[ $x == $LINES || $x == 0 ]]; then xd=$(( $xd *-1 )) ; fi ; if [[ $y == $COLUMNS || $y == 0 ]]; then yd=$(( $yd * -1 )) ; fi ; x=$(( $x + $xd )); y=$(( $y + $yd )); printf "\33[%s;%sH\33[48;5;%sm . \33[0m" $x $y $(( $a % 8 + 16 + $j % 223 )) ;a=$(( $a + 1 )) ; done ; x=$(( x%$COLUMNS + 1 )) ; j=$(( $j + 8 )) ;done |
| |
Commande utilisant la librairie "caca" et mplayer pour lire des vidéos en ascii : | Commande utilisant la librairie "caca" et mplayer pour lire des vidéos en ascii : |
| |
le feu d'artifice de la fin : | le feu d'artifice de la fin : |
curl -s -L http://bit.ly/10hA8iC | bash | curl -s -L http://bit.ly/10hA8iC | bash |
| |
(exécuter un fichier à l'aveugle ainsi peut être dangereux mais le script était sûr) | (exécuter un fichier à l'aveugle ainsi peut être dangereux mais le script était sûr) |