Un canal Unix relie les descripteurs de fichiers de deux processus. Un tube est créé avec la fonction POSIX pipe () déclarée dans <unistd.h>. Les shells permettent la création de canaux entre les processus en utilisant "|".
J'ai un script qui appelle deux commandes: long_running_command | print_progress Les long_running_commandempreintes sont un progrès, mais je ne suis pas satisfait. J'utilise print_progresspour le rendre plus agréable (à savoir, j'imprime la progression en une seule ligne). Le problème: La connexion d’un tuyau à stdout active également un tampon 4K, le …
J'ai deux processus fooet bar, connecté avec un tuyau: $ foo | bar barquitte toujours 0; Je suis intéressé par le code de sortie de foo. Y a-t-il un moyen d'y arriver?
Je voudrais supprimer tous les espaces et les tabulations de début et de fin de chaque ligne dans une sortie. Existe-t-il un outil simple dans lequel trimje pourrais canaliser ma sortie? Exemple de fichier: test space at back test space at front TAB at end TAB at front sequence of …
Je viens de voir ceci écrit; $ some-command >| /tmp/output.txt Les tubes verticaux sont utilisés dans les redirections standard "piping" de la sortie d'une commande à une autre, est >|en fait complètement inutile car ce serait la même chose que >dans ce scénario?
En tant que commentaire, je ne comprends pas très bien pourquoi "| true" dans un fichier makefile a le même effet que "|| true", l' utilisateur cjm a écrit: Une autre raison d'éviter true est que si la commande produit suffisamment de sortie pour remplir le tampon de canal, elle …
J'ai une commande qui envoie des données à stdout ( command1 -p=aaa -v=bbb -i=4). La ligne de sortie peut avoir la valeur suivante: rate (10%) - name: value - 10Kbps Je veux grep cette sortie afin de stocker ce "taux" (je suppose que pipe sera utile ici). Et enfin, j'aimerais …
J'ai un binaire (que je ne peux pas modifier) et je peux faire: ./binary < file Je peux aussi faire: ./binary << EOF > "line 1 of file" > "line 2 of file" ... > "last line of file" > EOF Mais cat file | ./binary me donne une erreur. …
Je veux souvent alimenter des données en chaîne relativement courtes (éventuellement plusieurs lignes) à des programmes en ligne de commande n'acceptant que les entrées de fichiers (par exemple, wdiff) de manière répétée. Bien sûr, je peux créer un ou plusieurs fichiers temporaires, enregistrer la chaîne à cet emplacement et exécuter …
Je n'ai jamais vraiment réfléchi à la manière dont le shell exécute les commandes redirigées. On m'a toujours dit que "la sortie standard d'un programme entrait dans le répertoire standard d'un autre", comme moyen de penser aux pipes. Alors naturellement, je pensais que dans le cas de, A | B, …
Je me demandais comment comprendre ce qui suit: Piping du stdout d'une commande dans le stdin d'un autre est une technique puissante. Mais que se passe-t-il si vous devez canaliser la sortie standard de plusieurs commandes? C'est ici qu'intervient la substitution de processus. En d'autres termes, la substitution de processus …
Je voulais être intelligent et comparer un fichier distant à un fichier local sans d'abord le télécharger manuellement. Je peux obtenir le contenu du fichier distant en ssh user@remote-host "cat path/file.name" Cependant, cela passe à diff ssh user@remote-host "cat path/file.name" | diff path/file.name me donne ceci: diff: missing operand after …
stdoutsur un serveur CentOS doit être connecté à stdinun autre serveur CentOS. Est-ce possible? Mise à jour ScottPack, MikeyB et jofel ont tous des réponses valables. J'ai attribué la réponse à Scott car, même si ma question ne mentionnait pas la sécurité comme une exigence, il est toujours agréable d'être …
J'ai une commande qui produit une sortie en couleur et j'aimerais la canaliser dans un fichier avec les codes de couleur supprimés. Existe-t-il une commande qui fonctionne comme catcelle-ci, sauf qu'elle supprime les codes de couleur? Je prévois de faire quelque chose comme ça: $ command-that-produces-colored-output | stripcolorcodes > outfile
Tout le monde sait comment faire tuyau unidirectionnel entre deux programmes (bind stdoutde première et stdinde seconde): first | second. Mais comment faire un tuyau bidirectionnel, c'est-à-dire une liaison croisée stdinet stdoutde deux programmes? Y a-t-il un moyen facile de le faire dans une coquille?
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.