A menudo quiero alimentar datos de cadenas relativamente cortas (aunque podrían ser varias líneas) a los programas de línea de comandos que aceptan solo la entrada de archivos (por ejemplo, wdiff) de manera repetida. Claro que puedo crear uno o más archivos temporales, guardar la cadena allí y ejecutar el comando con el nombre del archivo como parámetro. Pero me parece que este procedimiento sería muy ineficiente si los datos se escriben realmente en el disco y también podría dañar el disco más de lo necesario si repito este procedimiento muchas veces, por ejemplo, si quiero alimentar líneas individuales de texto largo archivos a wdiff. ¿Hay alguna forma recomendada de evitar esto, por ejemplo, mediante el uso de pseudo archivos como tuberías para almacenar los datos temporalmente sin escribirlos en el disco (o escribirlos solo si exceden una longitud crítica). Tenga en cuenta que wdiff toma dos argumentos y,wdiff <"text"
.
xargs
, las líneas de entrada de los argumentos de cadena de archivo para el comando. Pero necesito lo contrario.
echo $data_are_here | dumb_program
?
xargs
?