Articles of process sustitución

¿Qué fd se usan al hacer diff <(cat old) <(cat new)?

Si lo hago: diff <(cat old) <(cat new) ¿Lo hace funcionar internamente para el progtwig diff? ¿Y cómo hago el mismo truco con un script bash?

Extrayendo la list de patrones que salen de otro command

Puedo extraer la list de patrones usando el siguiente command fgrep -A 1 -f patternlist.txt filename.fasta pero, ¿hay alguna manera de extraerlo sin crear otro file (patternlist.txt en este caso) desde la salida de otro command? Como: cut -d " " Cell_cycle.txt -f 1 | grep …???… filename.fasta EDITAR: El Cell_cycle.txt se ve así: $ […]

¿Cómo ejecutar una cadena de salida sin la sustitución del command de bash?

¿Cómo ejecutar una cadena de salida sin la sustitución del command de bash? Por ejemplo, si tshark terminal y el progtwig aún no está instalado, recibiré un post de error como: _some text_ sudo apt-get install tshark Ahora quiero ejecutar esta última línea sin copyr, pegar ni transcribir. Si bash $ tshark 2> >(tail -1) […]

Sintaxis de sustitución de processs Soporte delantero / derecho contra soporte hacia atrás / izquierdo

tldp enumera dos syntax para la sustitución de processs. >(command_list) y <(command_list) ¿Cuál es la diferencia, si hay alguna?

problema de contraseña al alimentar un file remoto en diff

Cuando quiero comparar un file local con un file remoto, cualquiera de estos suele funcionar: $ ssh remote cat file | diff file – $ diff file <(ssh remote cat file) Sin embargo, a veces (especialmente cuando se necesita la contraseña) fallan así: $ ssh remote cat file | diff file – 1,162d0 < … […]

¿Cómo leer desde stdin en sustitución de process?

Me gustaría enviar stdout a varios commands , sin embargo, no estoy seguro de cómo leer desde la input estándar dentro de la sustitución de processs. Mis bashs: $ echo foo >(cat /dev/stdin) >(cat /dev/stdin) foo /dev/fd/63 /dev/fd/62 $ echo foo >(cat -) >(cat -) foo /dev/fd/63 /dev/fd/62 $ echo foo >(cat <&3) >(cat <&3) […]

bash while / read loop se comporta de manera diferente en una VM basada en mips / musl / busybox

En un sistema basado en musl / busybox que se ejecuta en qemu (mips), el script #!/usr/bin/bash printf '%s\n' "${BASH_VERSION}" > test.txt echo 'test.txt:' cat test.txt echo "No process substitution:" while IFS= read -ri; do printf 'ABC %s\n' $i | cat -vet done < test.txt echo 'test.txt:' cat test.txt echo "Process substitution:" while IFS= read […]

¿Cómo esperar un subprocess utilizado para la networkingirección de E / S?

Considere el siguiente fragment de script de Bash: exec 3> >(sleep 1; echo "$BASHPID: here") do-something-interesting exec 3>&- wait $! echo "$BASHPID: there" Cuando se ejecuta, produce: a.sh: line 4: wait: pid 1001 is not a child of this shell 1000: there 1001: here ¿Cómo puedo modificar la línea de wait para que realmente espere […]

Pregunta sobre detección interactiva en bash

Tengo una pregunta sobre la detección interactiva en bash. El siguiente script se imprime si se llama en modo interactivo o no. $ cat int.sh #!/bin/bash if [ -t 0 ]; then echo "interactive" else echo "not interactive" fi Algunos ejemplos de llamadas … $ ./int.sh interactive $ echo toto | ./int.sh not interactive $ […]

¿Estoy golpeando una condición de carrera en bash?

Tengo un script que compara la salida de un command con el resultado del mismo command que se ejecutó anteriormente, funciona la mayor parte del time, pero de vez en cuando no funciona como se esperaba. Pude reproducir el problema en una línea de testing. Sé que podría dividir esto fácilmente en la comparación de […]