Pipe de commandes
furax77
Messages postés
1
Statut
Membre
-
lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité -
lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité -
Bonjour,
Quelqu'un s'est il ,s'il est possible de "piper" le résultat d'une commande mv à un gzip. pour ne faire qu'une seule commande . (ou l'inverse gzip "piper" à un mv) afin de remplacr les 2 commades suivantes.
mv /home/user1/toto.gz /home/user2|
gzip -d /home/user2/toto.gz
Merci d'avance
JJ
Quelqu'un s'est il ,s'il est possible de "piper" le résultat d'une commande mv à un gzip. pour ne faire qu'une seule commande . (ou l'inverse gzip "piper" à un mv) afin de remplacr les 2 commades suivantes.
mv /home/user1/toto.gz /home/user2|
gzip -d /home/user2/toto.gz
Merci d'avance
JJ
A voir également:
- Commande pipe
- Invite de commande - Guide
- Commande terminal mac - Guide
- Diskpart commande - Guide
- Commande dism - Guide
- Commande scannow - Guide
5 réponses
Merci,
mais en fait dans tes solutions il s'agit plus de 2 commandes consécutives avec l'utilisation du "&&".
Je cherchai s'il était possible de prendre en entrée de la seconde commande la sortie de la précédente ( le pipe)
merci quand mème
JJ
mais en fait dans tes solutions il s'agit plus de 2 commandes consécutives avec l'utilisation du "&&".
Je cherchai s'il était possible de prendre en entrée de la seconde commande la sortie de la précédente ( le pipe)
merci quand mème
JJ
Salut,
tu peux faire dans une seule commande
ou
Regarde le chapitre XXX. Les redirections et les pipelines
tu peux faire dans une seule commande
mv /home/user1/toto.gz /home/user2 && gzip -d /home/user2/toto.gz
ou
gzip -dc /home/user1/toto.gz > /home/user2/toto && rm -v /home/user1/toto.gz
Regarde le chapitre XXX. Les redirections et les pipelines
Tu peux faire avec le chemin relatif
Supposons au tu te trouves dans /home/user1
c'est-à-dire que tu vois une invité (prompt) de genre [user1@localhost ~] $
Voià la commande avec le chemin relatif
Supposons au tu te trouves dans /home/user1
c'est-à-dire que tu vois une invité (prompt) de genre [user1@localhost ~] $
Voià la commande avec le chemin relatif
mv toto.gz ../user2 && gzip -d ../user2/toto.gz
Je cherchai s'il était possible de prendre en entrée de la seconde commande la sortie de la précédente ( le pipe)
Mais la sortie de la commande mv c'est quoi?
c'est un échec ou un succés donc il n'y a rien à transmettre en entrè pour la 2ème commande
mais en fait dans tes solutions il s'agit plus de 2 commandes consécutives avec l'utilisation du "&&".
Avec pipe c'est la même chose, c'est seulement l'interpretation qui n'est pas la même
commande1 | commande2
la sortie de commande1 est l'entrée de commande2
commande1 && commande2
commande2 s'exécute si et seulement la commande1 réussi
Dans ton cas tu as un résultat qui peut être une réussite où un échec, donc && est ce qu'il te faut
Un exemple avec |
cat fichier | less
cat fichier affiche sur la sortie standard le contenu de fichier
less lit la sortie de cat et permet la visualisation ligne par ligne
Dans ton cas tu peux faire quelque chose de genre
Mais la sortie de la commande mv c'est quoi?
c'est un échec ou un succés donc il n'y a rien à transmettre en entrè pour la 2ème commande
mais en fait dans tes solutions il s'agit plus de 2 commandes consécutives avec l'utilisation du "&&".
Avec pipe c'est la même chose, c'est seulement l'interpretation qui n'est pas la même
commande1 | commande2
la sortie de commande1 est l'entrée de commande2
commande1 && commande2
commande2 s'exécute si et seulement la commande1 réussi
Dans ton cas tu as un résultat qui peut être une réussite où un échec, donc && est ce qu'il te faut
Un exemple avec |
cat fichier | less
cat fichier affiche sur la sortie standard le contenu de fichier
less lit la sortie de cat et permet la visualisation ligne par ligne
Dans ton cas tu peux faire quelque chose de genre
gzip -dc /home/user1/toto.gz | /home/user2/toto.gz && rm /home/user1/toto.gz
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
afin de remplacr les 2 commades suivantes.
A savoir que ça reste toujours 2 commandes
Cette commande fonctionne aussi.
Le résultat de mv et lu par la commande suivante ensuite le fichier /home/user2/toto.gz est decompressé
Dans ce cas si jamais tu as une erreur dans la 1ère commande la 2ème essaie quand même de s'exécuter. Elle va avoir aussi un échec vu que le fichier n'a pas été deplacé.
En revanche avec && la 2ème commande n'est exécutée que si la 1ère a réussi.
J'espère que j'ai été assez claire.
A savoir que ça reste toujours 2 commandes
mv /home/user1/toto.gz /home/user2 | gzip -d /home/user2/toto.gz
Cette commande fonctionne aussi.
Le résultat de mv et lu par la commande suivante ensuite le fichier /home/user2/toto.gz est decompressé
Dans ce cas si jamais tu as une erreur dans la 1ère commande la 2ème essaie quand même de s'exécuter. Elle va avoir aussi un échec vu que le fichier n'a pas été deplacé.
En revanche avec && la 2ème commande n'est exécutée que si la 1ère a réussi.
J'espère que j'ai été assez claire.