Pages : 1
#1 Le 25/01/2018, à 13:41
- moko138
Redirection de commandes
#1 (initialement écrit en ./viewtopic.php?pid=21520529#p21520529).
gastonbreton a écrit :ça va être long, je tape tout à la main, il y a moyen de copier depuis mon autre ordinateur (..) ?
Oui, ça s'appelle "rediriger" et la commande est " >".
Nota : le retour de commande étant redirigée hors du terminal, on ne voit rien dans le terminal. Par exemple:moi@mon-pc:~$ sudo parted -l > parted-l-2016-05-18.txt [sudo] password for moi: moi@mon-pc:~$
- -
N.B. :
> crée le fichier de sortie, ou l'écrase s'il existe déjà !
>> crée le fichier de sortie, ou lui fait un ajout s'il existe déjà !- - -
CAS 1, la session graphique marche
cd && ta-commande >> nom-de-ton-choix.txt
va produire le retour de ta commande dans ton home, sous le nom "nom-de-ton-choix.txt".
Ensuite tu n'as plus qu'à copier ce fichier sur clef usb et à le transférer vers le pc pleinement fonctionnel.
- - -CAS 2, la session graphique ne marche pas
Brancher une clef usb et repérer son point de montage:
2.a) Dans Trusty et versions postérieuresls -l /media/$USER
va te donner le point de montage de ta clef,
- sous son nom propre, si tu lui as donné une étiquette/label,
- sous son UUID (une site de chiffres et de lettres qui ressemblera à 1234-ABCD) sinon.Rediriger la commande vers la clef (sans transiter par le home) :
ta-commande >> /media/$USER/1234-ABCD/nom-de-ton-choix.txt
Démonter la clef :
sudo umount /media/$USER/1234-ABCD
Il n'y a plus qu'à brancher la clef au pc pleinement fonctionnel.
- - -2.b) Dans Precise [pour mémoire]
ls -l /media
Rediriger la commande vers la clef (sans transiter par le home) :
ta-commande >> /media/1234-ABCD/nom-de-ton-choix.txt
Démonter la clef :
sudo umount /media/1234-ABCD
AJOUT (2/7/2018)
Merci à jpberroir pour l'astuce suivante :
Pour rester lisible après redirection,
top doit être lancé avec les options -b -n1
top -b -n1 | head -25 >> toto.txt
ou (vers la clef usb 1234-ABCD) :
top -b -n1 | head -25 >> /media/$USER/1234-ABCD/toto.txt
Dernière modification par moko138 (Le 02/07/2018, à 04:48)
%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel : À la découverte de dcraw
Hors ligne
#2 Le 25/01/2018, à 13:58
- moko138
Re : Redirection de commandes
#2 Variante avec la commande "script"
Merci à grandtoubab et à MicP ! (cf. ./viewtopic.php?pid=21860000#p21860000
Une commande simple qui permets de sauvegarder le texte du terminal dans un fichier: script
Si on est dans une phase de dépannage, on peut demander à l'interlocuteur de préalablement écrire la commande
script depannage.txt
et le fichier depannage.txt se rempli automatiquement avec les commandes et leur compte-rendu
pour le fermer complètement exit
$ exit exit Script terminé, le fichier est depannage.txt
On peut alors relire le fichier et avoir la trace de toutes les erreurs de frappes ou le partager sur un serveur
C'est une technique que j'utilise aussi lorsque j'installe des logiciels sous forme de fichier archive ou un logiciel Windows dans Wine
Pour mettre directement le fichier sur la clef usb 1234-ABCD :
script /media/$USER/1234-ABCD/depannage.txt
- -
Cette méthode a une limite :
il vaut mieux éviter, sous peine d'artefacts qui nuisent à la lisibilité, d'y employer les commandes comme "top" - sauf options ci-dessous et à la fin du premier message - et "ncdu" qui ne rendent pas la main à l'utilisateur (tant qu'on n'a pas tapé "q").
Pour top :
top -b -n1 | head -25
Et à la place de ncdu, employer du :
sudo du -xm -d1 / 2>/dev/null | sort -nr | head -8
Et si -d1 ne passe pas sur votre distribution, utilisez sa formule développée --max-depth=1 :
sudo du -xm --max-depth=1 / 2>/dev/null | sort -nr | head -8
Dernière modification par moko138 (Le 02/07/2018, à 05:20)
%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel : À la découverte de dcraw
Hors ligne
#3 Le 02/07/2018, à 05:21
- moko138
Re : Redirection de commandes
Édité les deux messages ci-dessus, merci à jpberroir !
%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel : À la découverte de dcraw
Hors ligne
#4 Le 23/11/2018, à 06:18
- moko138
Re : Redirection de commandes
Astuce pour les aidants,
Dans le cas où la personne aidée a du mal à identifier le point de montage de sa clef usb en "/media/$USER/quelque chose/", ce point est généralement :
"/media/$USER/$(ls -rt /media/$USER | tail -1)"
Donc on peut :
- lui demander de vérifier d'abord si
ls -lrt /media/$USER
retourne bien une ligne unique (explication à la fin de ce message) ;
- si oui, lui faire copier-coller ce contournement :
Cas de "script" :
script "/media/$USER/$(ls -rt /media/$USER | tail -1)/depannage.txt"
Cas de "ta-commande >>" :
ta-commande >> "/media/$USER/$(ls -rt /media/$USER | tail -1)/toto.txt"
- -
Variante :
On peut aussi commencer par faire faire :
cd "/media/$USER/$(ls -rt /media/$USER | tail -1)"
Après quoi, chaque
ta-commande >> toto.txt ; echo >> toto.txt
ira ajouter son retour dans toto.txt, sur la clef.
= =
Les guillemets sont destinés à tolérer les espaces dans l'étiquette éventuelle de la clef (ou d'une partition interne "Mes Documents", par exemple).
tail -1 suppose que la clef porte la date la plus récente parmi les périphériques montés sous /media/$USER/.
Si c'est l'avant-dernier, on remplacera "tail -1" par "tail -2|head -1".
(Oui, il y a des clefs datées du 1er janvier 1970, et un dvd du commerce resté dans le tiroir peut fort bien être daté de 2036, ça m'est arrivé aujourd'hui...).
L'idéal est donc d'avoir
- un seul périphérique de stockage externe branché ;
- Et aucun volume interne, comme le prévoit la hiérarchie standard Linux, monté sous /media/$USER/. Mais le moment de diagnostiquer une défaillance, n'est pas le plus approprié pour rectifier un écart par rapport au standard.
D'où l'intérêt de la vérification initiale, et de se tenir prêt à remplacer tail -1
par tail -2|head -1, voire par tail -3|head -1.
Dernière modification par moko138 (Le 04/08/2019, à 10:32)
%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel : À la découverte de dcraw
Hors ligne
Pages : 1