Tutoriales

Cómo copiar el contenido de un archivo al portapapeles sin mostrar su contenido

Cuando trabajamos en la terminal, copiamos una gran cantidad de texto del contenido de un archivo al portapapeles, luego pegamos el contenido donde debe pegarse.

Si le preguntara cómo copiar el contenido de un archivo desde la terminal al portapapeles, probablemente diría que generalmente uso el comando cat para mostrar el contenido del archivo y luego selecciono el texto para copiar.

Absolutamente correcto, no hay nada de malo en el método, pero ¿por qué hacer un esfuerzo innecesario cuando puedes usarlo? xclip Ordenar ¿Copiar el contenido de un archivo directamente al portapapeles?

si no sabes que xclip es y cómo usarlo, entonces este artículo será muy útil para su uso futuro.

Instale xclip en su distribución de Linux

Empieza a usar comando xclipprimero, necesitas Instalar Haga esto en su distribución de Linux ejecutando el siguiente comando de acuerdo con su distribución disponible.

$ sudo apt install xclip                      [Ubunut/Debian]
$ sudo dnf -y install xclip                   [RHEL/Fedora/AlmaLinux]
$ sudo pacman install xclip                   [ArchLinux/ManjaroLinux/GarudaLinux]

Una vez instalado, puede seguir las secciones a continuación para obtener información sobre el uso del comando xclip.

Copie el contenido de un archivo usando xclip

Hay varias formas de guardar el contenido del archivo en el portapapeles, una usa el operador de redirección y la segunda usa (|) tubería operador de cat Ordenar y ahorrar eso directamente llegar portapapeles No muestre el contenido del archivo en el terminal.

Copie el contenido del archivo usando el operador de redirección

Primero, aprenda a usar el operador de redirección para copiar el contenido de un archivo al portapapeles. Por ejemplo, suponga que tiene un archivo de muestra almacenado en el directorio actual y desea copiar el contenido del archivo en el portapapeles, luego ejecute el siguiente comando.

$ xclip -selection clipboard < sample 

Salida del comando anterior:

Copie el contenido de un archivo usando xclip

El comando anterior comenzará «muestra» archivo y ponerlo en el portapapeles sin abrir el archivo en la terminal, y pegarpuedes usar tu Atajo general.

También puede usar una versión más corta del comando anterior.

$ xclip -sel clip < sample 
$ xclip -se cl < sample 
$ xclip -se c < sample 

Copie el contenido de un archivo usando el operador de tubería

Una alternativa al comando anterior es usar el operador de tubería, que también hará el mismo trabajo. Creo que los comandos a continuación se explican por sí mismos, por lo que no creo que necesite ninguna explicación.

$ cat sample | xclip -selection clipboard

Salida del comando anterior:

Copie el contenido de un archivo usando el operador de tubería
Copie el contenido de un archivo usando el operador de tubería

Copie la salida del comando al portapapeles usando tuberías y xclip

El problema con el comando anterior es que coloca todo el contenido en el portapapeles, pero ¿qué sucede si solo desea copiar una línea específica del contenido del archivo en el portapapeles?

En este caso puedes usar Cola, cabeza, sed, awky grep Ordenar Filtre su solicitud y copie el contenido del texto en el portapapeles.

Por ejemplo, tiene varias líneas de texto almacenadas en su archivo «muestra» archivo, y desea copiar la última línea en el portapapeles, por lo que puede usar la cola y se leerá desde la parte inferior.

$ tail -1 sample | xclip -selection clipboard

Salida del comando anterior:

Copie la salida del comando al portapapeles usando tuberías y xclip
Copie la salida del comando al portapapeles usando tuberías y xclip

Puede usar el mismo comando con algunos ajustes para copiar cadenas del comando echo:

$ echo -n "i'm_in_your_clipboard" | xclip -selection clipboard

Borrar datos del portapapeles usando xclip en Linux

Al usar los comandos anteriores, ha visto cómo poner datos en el portapapeles, pero ¿cómo borrar o eliminar los datos almacenados en el portapapeles? simple. Simplemente llame al siguiente comando y borrará los datos guardados por el portapapeles.

$ xclip -selection clip < /dev/null 

[Bonus] Agregue funcionalidad básica a su archivo .bashrc para copiar el contenido del archivo al portapapeles

Anteriormente, hemos discutido cómo usar el comando xclip para copiar contenido al portapapeles. Mientras lo usaba, me resultó inútil escribir el comando completo una y otra vez para copiar el resultado en el portapapeles.

Como resultado, agregué una función básica .bashrc Automáticamente colocará el contenido del archivo en el portapapeles.

xcp()
{
  get_content="$1"
  if [[ -f $get_content ]]; then
     xclip -selection c <  $get_content 
  else
    printf '%s\n' "You forget to pass file, or provided invalid file" >&2
  fi
}

Entonces, cada vez que quiero copiar datos de un archivo específico, simplemente ejecuto la siguiente sintaxis en la terminal.

$ xcp [FILE-PATH]

Por ejemplo, si quiero empezar /etc/os-releaseluego ejecutaré el siguiente código:

$ xcp /etc/os-release

envolver

¡Eso es todo por ahora!

En este artículo, aprendió cómo copiar una cadena o salida de comando al portapapeles sin mostrarla en la terminal para facilitar el acceso.

LEER  Aloja tu propio Internet Archive con ArchiveBox

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba