Ho provato a scrivere l'output del comando php -i
in un file utilizzando php -i > info
e ho ricevuto il seguente errore:
output is not a tty
Cosa significa?
Sto usando git bash
su Windows.
Ho provato a scrivere l'output del comando php -i
in un file utilizzando php -i > info
e ho ricevuto il seguente errore:
output is not a tty
Cosa significa?
Sto usando git bash
su Windows.
Risposte:
Cosa ha funzionato per me, in base ai commenti di Peh a stackoverflow.com/questions/33622087
Se si utilizza C: \ Programmi \ Git \ bin \ bash.exe anziché C: \ Programmi \ Git \ git-bash.exe, il comando funziona correttamente
Ho trovato un argomento simile come questo. Una soluzione che ha funzionato per me:
Scrivi
php.exe -i > info
invece di
php -i > info
Quindi aggiungi l' .exe
estensione ai tuoi comandi e funziona.
Ho trovato questa soluzione qui: /programming//a/44727575/2377961
Se ti capita di usare winpty sotto il cofano, devi passare l' -Xallow-non-tty
argomento per risolvere questo problema:
$ winpty python -c 'print("hello")' | grep h
stdout is not a tty
$ winpty -Xallow-non-tty python -c 'print("hello")' | grep h
hello
node
attraverso conemu
.
Credo che questo problema riguardi più il modo in cui Git Bash gestisce il piping e meno su PHP, perché ho riscontrato lo stesso sintomo usando Python su Windows. La risposta attualmente più votata non funziona per me. Potrebbe funzionare qualche mese dopo, sulla base di questo commento e di un commento di follow-up . Ma sono impaziente, quindi scelgo di usare il prompt dei comandi di Windows nativo e, voilà, funziona!
NON FUNZIONA in Git Bash
rayluo@DESKTOP-10B0N4G MINGW64 ~
$ python -c "print('hello world')" > test.txt
stdout is not a tty
FUNZIONA nel prompt dei comandi
(env27) C:\Users\rayluo>python -c "print('hello world')" > test.txt
(env27) C:\Users\rayluo>type test.txt
hello world
Stai reindirizzando l'output dal tuo terminale (tty) a un file. Pertanto il tuo output non è più un tty.
Il messaggio ha perfettamente senso. Tuttavia, questo non dovrebbe essere un errore.
Non riesco a riprodurre questo comportamento su un sistema Linux.