5 votos

Deshabilitar el operador ">" en la terminal de Linux Rstudio

Para una sesión interactiva a través de SSH en Linux cluster en Rstudio, es muy fácil accidentalmente ejecutar el método abreviado de teclado para "ejecutar en terminal" cuando los comandos se destacan en Rstudio de la consola. Esto se traduce en el comportamiento, tales como

> biblioteca

o

Var1>Var2

se ejecuta en el terminal, que crea un library o Var2 archivo en el directorio de trabajo remoto si el terminal está conectado en el prompt de bash.

En el peor de los casos esto podría resultar en la sobreescritura de los archivos en el directorio de trabajo remoto.

Me gustaría deshabilitar ">" en estas sesiones, pero no estoy seguro de cómo hacer esto.

23voto

WFBD Puntos 11

> no es una orden sino un operador, de modo que no puede alias. Pero usted puede deshabilitar sobrescribir los archivos con la noclobber opción. Sólo tiene que ejecutar set -C o set -o noclobber (o añadir a tu ~/.bashrc)

El noclobber opción está disponible para evitar sobrescribir los archivos existentes con redirección de salida (véase La Set Builtin). La '>|' operador de redirección puede ser utilizado para anular noclobber.

https://www.gnu.org/software/bash/manual/bashref.html#The-Set-Builtin

Si el archivo no existe, será creado, pero al menos usted puede evitar el peor de los casos

Si desea deshabilitar completamente la redirección, tiene que usar el shell restringido , pero que había resultado en una muy limitada ambiente y, en particular, no se pueden ejecutar comandos con barras como /bin/ls o cambiar el directorio

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: