Risposte:
Solo uno sparo nel buio:
c'è uno script o un comando nel tuo ~/.bash_profile che cercano di scrivere /dev/ttys000 che è chiuso per scrivere per quel processo / utente.
Se vuoi identificare dove viene generato l'errore, prova ad abilitare il debug della shell corrente:
set -x # To enable debugging
source ~/.bash_profile # source the file
set +x # To disable debugging
Se trovi chi / perché e non riesci a risolvere il problema, posta un'altra domanda al riguardo.
Esempio:
Nel file aaa.sh c'è:
date +"%H:%M:%S"
ls /ahksfjkasd
echo Hi!
L'output di set -x; source aaa.sh; set +x è:
++ date +%H:%M:%S
17:54:09
++ ls --color=auto /ahksfjkasd
ls: cannot access /ahksfjkasd: No such file or directory
++ echo 'Hi!'
Hi!
L'errore viene generato dalla riga precedente ( ++ ls --color /ahksfjkasd )
~/.bash_profile causando i problemi - lo è stato export GPG_TTY="$(`tty`)", dove GPG_TTY è una variabile d'ambiente richiesta per il programma pinentry di curses usato da GnuPG - gnupg.org/documentation/manuals/gnupg/Common-Problems.html . Non capisco la loro raccomandazione, vogliono il valore di `tty` essere assegnato a GPG_TTY, Ma questo non funziona. La rimozione dei backtick fornisce il valore corretto di tty a GPG_TTY.
` dalla tua espressione (troppo tardi ;) ). Utilizzando a = `mycommand` o a = $(mycommand) produce lo stesso effetto (esegui il comando mycommand e memorizza il suo output nella variabile a ). Probabilmente è un errore di stampa.
GPG_TTY="$(tty) ".
~/.bash_profile... Qui fuori ci sono più utenti di Linux e non di Osx di quanto tu possa immaginare ... :-)