Tengo un montón de archivos ( file1
, file2
, file3
, ...) con dos columnas. Por ejemplo, se file1
ve así:
0.12 0
0.32 0
0.42 1
0.23 0
y se file2
parece a:
0.34 1
0.55 1
0.31 1
0.99 0
Me pregunto cómo combinar correctamente estos archivos en un archivo con solo las primeras columnas. El archivo de salida debería ser como:
0.12 0.34
0.32 0.55
0.42 0.31
0.23 0.99
Mi intento inicial (sin éxito) está aquí:
pr -t -s ',' -m <(< file1 | cut -d ' ' -f 1) <(< file2 | cut -d ' ' -f 1)
La respuesta de Steve demuestra que su enunciado del problema no está claro. Describa más claramente lo que quiere decir con "fusionar" y muestre dos o más archivos de muestra (probablemente sea suficiente mostrar solo dos o tres líneas de cada uno) y luego muestre el resultado deseado . Por cierto, ¿estás garantizando que todos los archivos tienen la misma longitud (si es apropiado)?
—
Scott
Por cierto, no va a funcionar. Intente (omitiendo ) o (colocando la redirección de E / S al final del comando).
—
Scott
<
filename
|
command
<
filename command
|
command
<
filename
Gracias, eso me ayuda mucho. La siguiente línea funciona:
—
Andrej
pr -t -s' ' -m <(< file1 cut -d ' ' -f 1) <(< file2 cut -d ' ' -f 1 )
(La ventana de edición de cinco minutos se acabó). Por cierto, no va a funcionar. Intente (omitiendo ) o (colocando la redirección de E / S al final del comando). De hecho, la mayoría de los comandos (incluidos ) leerán de los archivos cuyo nombre (s) se pasan como argumentos, por lo que puede decir simplemente .
—
Scott
<
filename
|
command
<
filename command
|
command
<
filename
cut
command
filename