El comando Pegar es uno de los comandos útiles en el sistema operativo Unix o Linux. Se utiliza para unir archivos horizontalmente (fusión paralela) generando líneas que consisten en líneas de cada archivo especificado, separadas por tabulaciones como delimitador, a la salida estándar. Cuando no se especifica ningún archivo, o se coloca un guión («-«) en lugar del nombre del archivo, se pegan las lecturas de la entrada estándar y se muestra la salida tal como está hasta que se da un comando de interrupción [Ctrl-c] .
Sintaxis:
paste [OPTION]... [FILES]...
Consideremos tres archivos que tienen nombre , estado , capital y número . El archivo de estado y capital contiene 5 nombres de los estados y capitales de la India, respectivamente. El archivo numérico contiene 5 números.
$cat state Arunachal Pradesh Assam Andhra Pradesh Bihar Chhattisgrah $cat capital Itanagar Dispur Hyderabad Patna Raipur
Sin ninguna opción pegar fusiona los archivos en paralelo. El comando pegar escribe las líneas correspondientes de los archivos con tabulador como delimitador en la terminal.
$paste number state capital 1 Arunachal Pradesh Itanagar 2 Assam Dispur 3 Andhra Pradesh Hyderabad 4 Bihar Patna 5 Chhattisgrah Raipur
En el comando anterior, tres archivos se fusionan mediante el comando de pegado.
Opciones:
1. -d (delimitador): el comando Pegar usa el delimitador de tabulación de forma predeterminada para fusionar los archivos. El delimitador se puede cambiar a cualquier otro carácter usando la opción -d . Si se especifica más de un carácter como delimitador, pegar lo utiliza de forma circular para cada separación de línea de archivo.
Only one character is specified $paste -d "|" number state capital 1|Arunachal Pradesh|Itanagar 2|Assam|Dispur 3|Andhra Pradesh|Hyderabad 4|Bihar|Patna 5|Chhattisgrah|Raipur More than one character is specified $paste -d "|," number state capital 1|Arunachal Pradesh,Itanagar 2|Assam,Dispur 3|Andhra Pradesh,Hyderabad 4|Bihar,Patna 5|Chhattisgrah,Raipur First and second file is separated by '|' and second and third is separated by ','. After that list is exhausted and reused.
2. -s (serial): Podemos fusionar los archivos de manera secuencial usando la opción -s. Lee todas las líneas de un solo archivo y fusiona todas estas líneas en una sola línea con cada línea separada por tabulación. Y estas líneas individuales están separadas por nueva línea.
$paste -s number state capital 1 2 3 4 5 Arunachal Pradesh Assam Andhra Pradesh Bihar Chhattisgrah Itanagar Dispur Hyderabad Patna Raipur
En el comando anterior, primero lee los datos del archivo numérico y los fusiona en una sola línea con cada línea separada por tabulación. Después de que se introduzca el carácter de nueva línea y se lea desde el archivo siguiente, es decir , se inicia el estado y el proceso se repite de nuevo hasta que se leen todos los archivos.
Combinación de -d y -s: el siguiente ejemplo muestra cómo especificar un delimitador para la combinación secuencial de archivos:
$paste -s -d ":" number state capital 1:2:3:4:5 Arunachal Pradesh:Assam:Andhra Pradesh:Bihar:Chhattisgrah Itanagar:Dispur:Hyderabad:Patna:Raipur
3. –version: esta opción se utiliza para mostrar la versión de paste que se está ejecutando actualmente en su sistema.
$paste --version paste (GNU coreutils) 8.26 Packaged by Cygwin (8.26-2) Copyright (C) 2016 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by David M. Ihnat and David MacKenzie.
Aplicaciones del comando Pegar
1. Combinar N líneas consecutivas: el comando pegar también se puede usar para combinar N líneas consecutivas de un archivo en una sola línea. Aquí se puede especificar N especificando el número de guiones (-) después de pegar.
With 2 hyphens $cat capital | paste - - Itanagar Dispur Hyderabad Patna Raipur With 3 hyphens $paste - - - < capital Itanagar Dispur Hyderabad Patna Raipur
2. Combinación con otros comandos: aunque pegar requiere al menos dos archivos para concatenar líneas, los datos de un archivo se pueden proporcionar desde el shell. Como en nuestro ejemplo a continuación, el comando de corte se usa con la opción -f para cortar el primer campo del archivo de estado y la salida se canaliza con el comando de pegado que tiene un nombre de archivo y en lugar del segundo nombre de archivo se especifica un guión.
Nota: si no se especifica un guión, la entrada del shell no se pega.
Without hypen $cut -d " " -f 1 state | paste number 1 2 3 4 5 With hypen $cut -d " " -f 1 state | paste number - 1 Arunachal 2 Assam 3 Andhra 4 Bihar 5 Chhattisgrah
El orden de pegado se puede cambiar alterando la ubicación del guión:
$cut -d " " -f 1 state | paste - number Arunachal 1 Assam 2 Andhra 3 Bihar 4 Chhattisgrah 5
Este artículo es una contribución de Akash Gupta . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por AKASH GUPTA 6 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA