Creo que he estropeado mi archivo bash /bin/bash al intentar crear mi primer script, muestra un mensaje que dice "proceso completado" y bloquea mi terminal, si cambio a otro shell, por ejemplo, sh, entonces está bien, ¿hay una manera de restaurar el contenido del archivo bash o algo así, no tengo una copia de seguridad ya que nunca logré usar time machine. Gracias por la ayuda
Respuesta
¿Demasiados anuncios?El problema probablemente esté en uno de los tres archivos siguientes, todos ellos situados en root de su directorio personal: .bashrc, .profile o .bash_profile. Pruebe esto:
1) Mientras está en una sesión sh, navegue a su directorio de inicio si no está ya allí (escriba cd ~).
2) Ejecute el comando ls -al y determine cuáles de esos archivos (.bashrc, .profile o .bash_profile) están presentes en su carpeta de inicio.
3) Es probable que el archivo que está causando el problema sea el último que estaba editando o esté vinculado a uno de los tres archivos nombrados anteriormente. Mueva o cambie el nombre de uno de esos archivos en su directorio principal. Si no está seguro de cuál es el archivo con el que estaba trabajando, yo empezaría por el .bashrc.
Ejemplo de comando para mover .bashrc: mv .bashrc bashrc.bak
4) Una vez que haya movido o cambiado el nombre de uno de los archivos previamente listados, intente abrir una nueva sesión de bash. Si la sesión se inicia con éxito, entonces ya sabe qué archivo necesita ser editado. Si la sesión bash no se inicia, restaure el archivo a su ubicación original. Si ningún archivo parece ser la causa, intente mover o cambiar los nombres de todos los archivos nombrados.
5) Haga una copia de seguridad del archivo que está causando problemas.
Para resolver el mensaje de "proceso completado", tendrá que solucionar el problema del script buscando declaraciones de retorno o de salida que puedan estar escritas incorrectamente. Si no están presentes, es posible que tenga que comentar líneas del script para determinar dónde está el problema. Para comentar una línea, añada un carácter # al principio de la línea.
Durante este último paso, tendrá que mover una copia del archivo infractor a su ubicación original. Para facilitar las cosas, probablemente abriría el archivo usando TextWrangler o desde nano o vim en otra sesión de sh para hacer los cambios.
(Nota: TextEdit y XCode también funcionan. Sin embargo, para abrir el archivo, tendrá que emitir un comando como "open -a TextEdit.app ~/.bashrc" para abrir el archivo porque la ventana de apertura de archivos no permite abrir archivos cuyos nombres comienzan con un punto).