linux - echo “cadena” | xclip-selecciona el portapapeles, copia la ''cadena'' pero también le agrega una nueva línea. ¿Cómo arreglar esto?
centos clipboard (3)
Desde la versión 0.13 de xclip, tiene una forma genérica que conservará las nuevas líneas internas con la opción r o rmlastnl .
Así tendrás:
pwd | xclip -r # copied without new line
echo "foo" | xclip -r # copied without new line
ps | xclip -r # copied without the last new line!
Este es el comando responsable de agregar una nueva línea a la string
echo "string" | xclip -selection clipboard
La solución más genérica es ignorar las nuevas líneas independientemente de la fuente de entrada. Por ejemplo, el caso de uso común es copiar en el portapapeles una ruta del directorio actual. El comando
pwd | xclip -selection clipboard
Copia el nuevo carácter de línea y esto a menudo no es lo que queremos. La solución es la siguiente:
pwd | xargs echo -n | xclip -selection clipboard
Puedes crear un alias para hacerlo más conveniente:
alias xclip=''xargs echo -n | xclip -selection clipboard''
y desde ahora en uso:
pwd | xclip # copied without new line
echo "foo" | xclip # copied without new line
echo -n "string" | xclip -selection clipboard
Probablemente debería haber elaborado un poco. El valor predeterminado para echo es generar la cadena Y una nueva línea. - Supone lo último.