sirve scripts script resueltos que programas programar pasar parametros para manejo ejercicios ejemplos cadenas bash scripting piping

scripts - Redirigir argumentos a un programa(BASH)



scripts linux ejercicios resueltos (1)

Puede usar $(< file) para leer un archivo en una variable. Usarlo sin comillas hará que los contenidos pasen como argumentos múltiples.

your_path=../file/test test_path=../../public/test file_input="$1" contents=$(< "$file_input") "$test_path" $contents > correctanswer 2>&1 "$your_path" $contents > youransweranswer 2>&1 diff correctanswer youranswer

Esto puede escribirse más sucintamente usando la sustitución de procesos:

diff <(../../public/test $(< "$1")) <(../file/test $(< "$1"))

Soy bastante nuevo en bash scripting y una parte en la que estoy atascado es después de done< "$file_input" Lo que intento lograr es cuando ejecuto el programa ./test dentro del archivo de prueba contiene los números 15 14 90 22 y el programa va a tomar esos números como argumentos y ejecutarlos, pero no estoy seguro de cómo hacerlo. ¿Voy en la dirección correcta? Gracias por cualquier ayuda

if [[ "$#" -ne 1 ]] then writeusage exit fi your_path=../file/test test_path=../../public/test file_input="$1" while read -r line do args+="$line" done < "$file_input"

----------------- No estoy seguro de cómo redirigir los argumentos en un archivo de texto a mi programa y luego poner el resultado en un archivo llamado correctanswer y diff them

# Redirect the output to a file named text $test_path > correctanswer 2>&1 # Redirect your output to a file named text2 $your_path > youranswer 2>&1 # diff the solutions diff correctanswer youranswer