stty: argumento no válido

Estoy haciendo un Telnet en una máquina Solaris y estoy obteniendo el error anterior con mis scripts. Me doy count de que este es un problema común, y la solución es verificar la línea 'stty erase ^ H' dentro de mi perfil, pero no puedo encontrarla.

.profile no tiene ninguna reference a stty, y no tengo un .cshrc en ningún lado. Realicé un grep en mi directory de inicio, pero no se me ocurrió nada.

¿Hay alguna otra fuente de este problema? Todas las soluciones en línea se refieren a .profile o .cshrc. Gracias.

Tuve esto, fue un stty en .kshrc. Recuerde que .kshrc tiene su origen en todos los scripts ksh, interactivos y no interactivos. Si ejecuta un script, stty todavía se activará, intentará trabajar en stdin, que es un file (no es un tty ahora) y falla con un error.

Para rastrear su perfil, intente invocar su shell de inicio de session con un nombre que empiece por - y con la opción -x para que se imprima. Para saber cuál es su shell de inicio de session, ejecute getent passwd $USER ; su shell de inicio de session es el último campo en la línea (generalmente /bin/something ). Para invocar el shell con un nombre que comience con - , haga un enlace simbólico cuyo nombre comience con - y ejecútelo. Por ejemplo, si su shell de inicio de session es ksh:

 ln -s /bin/ksh ./-ksh ./-ksh -x rm ./-ksh 

No estoy seguro si esto funcionará con csh. Si no encuentra nada interesante, busque ambos en /etc y sus files de puntos:

 grep stty /etc/* ~/.* 2>/dev/null 

De la página de manual de csh:

Un shell de inicio de session comienza ejecutando commands desde los files del sistema /etc/csh.cshrc y /etc/csh.login . Luego ejecuta commands desde files en el directory principal del usuario: primero ~ / .tcshrc (+) o, si ~ / .tcshrc no se encuentra, ~ / .cshrc , luego ~ / .history (o el valor de la variable del shell histfile) ), luego ~ / .login , y finalmente ~ / .cshdirs (o el valor de la variable de shell del file de directorys) (+). El intérprete de commands puede leer /etc/csh.login antes en lugar de después de /etc/csh.cshrc, y ~ / .login antes en lugar de después de ~ / .tcshrc o ~ / .cshrc y ~ / .history, si así se comstack; ver la variable de shell de la versión. (+)

Entonces hay un par de files donde puedes encontrar esta línea

También puede usar tty para probar tty: tty -s && stty erase ^H

El código de retorno de tty -s especifica si la connection actual es tty o no.