|
From: | Julio C. Neves |
Subject: | Re: [shell-script] Here strings no /bin/sh |
Date: | Thu, 9 Jul 2015 13:48:46 -0300 |
Relendo está thread, vi que escrevi "O sh do LINUX é != ao sh do UNIX, já li que esse é o bash, do qual não gosto, mas que foi criado somente em nome da compatibilidade."
Isso deve ter sido causado pelo corretor pornografico ;) Nesse texto s/bash/dash/
Hmm, Fernando, talvez até tenha sido, mas tenho impressão que não (me corrijam por favor).Quando executo o php pelo meu usuário, ele usa /bin/bash$ php -r 'system("echo \$SHELL");'
/bin/bashUm amigo, membro do grupo, me sugeriu em um email privado que eu alterasse o arquivo /etc/passwd e colocasse o user www-data para usar o bash.Não fiz isso pq o servidor é um pouquinho sentimental, mas tenho quase certeza que resolveria.
Alysson Gonçalves de Azevedo
"So Long, and Thanks For All the Fish"Em 9 de julho de 2015 00:25, Fernando Mercês address@hidden [shell-script] <address@hidden> escreveu:Boa noite, galera!Só por curiosidade, o C usa chama o /bin/sh através da system(). Talvez por isso o PHP a use, já que é escrito em C (admitindo que a system() do PHP chame a system() do C). ;-)Tanto é que uma vez um cara escreveu um desafio em C que fazia uma série de coisas no Linux e os participantes tinham que descobrir o que era. Como ele usou a system(), eu substituí o /bin/sh por um script contendo "echo $@" e vi todos os comandos. :DNo Debian o /bin/sh é o dash, uma versão do ash [1].Abraços! o/2015-07-01 14:53 GMT-03:00 Alysson Gonçalves de Azevedo address@hidden [shell-script] <address@hidden>:Desculpe a demora, tava viajando.Julio, eu sou um dos que não sabiam desse detalhe. =DUma coisa que tentarei descobrir é pq o php usa sh e não o shell nativo do usuário, mas dai já é off-topic.De qualquer forma, obrigado pela atenção.
Alysson Gonçalves de Azevedo
"So Long, and Thanks For All the Fish"Em 27 de junho de 2015 11:05, 'Julio C. Neves' address@hidden [shell-script] <address@hidden> escreveu:Fala Alyson,tudo bem por aí?Só quero deixar claro que existem outros interpretadores além do Bash nos quais destaco: sh (Bourne Shell) e ksh (Korn Shell) ambos do UNIX e o csh (c shell) do BSD. Os 2 primeiros são proprietários e portanto o LINUX não usa nenhum deles. O sh do LINUX é != ao sh do UNIX, já li que esse é o bash, do qual não gosto, mas que foi criado somente em nome da compatibilidade.Queria esclarecer esse ponto pq muita gente não sabe disso e pensa que o sh do LINUX é o Borne Shell, ledo engano...Voltando à sua pergunta, a resposta e não. O ksh não reconhece Here Strings e o sh muito menos.Bom fim de semana para todos.Em 26 de junho de 2015 20:16, Alysson Gonçalves de Azevedo address@hidden [shell-script] <address@hidden> escreveu:Olá pessoal, há um tempão que eu uso here strings nos comandos que preciso executarat now <<< "echo teste from at"mas acontece que agora eu preciso executar isso pelo php, e o php aparentemente usa o /bin/sh como shell, e isso faz com que o comando acima não funcione.sh: 1: Syntax error: redirection unexpected
Eu contornei isso usando pipe mesmoecho "echo teste from sh" | at now
Mas fiquei curioso pq não encontrei nada equivalente para o sh. Alguém sabe se tem?
Alysson Gonçalves de Azevedo
"So Long, and Thanks For All the Fish"
[Prev in Thread] Current Thread [Next in Thread]
- Re: [shell-script] Here strings no /bin/sh, Alysson Gonçalves de Azevedo, 2015/07/01
- Re: [shell-script] Here strings no /bin/sh, Fernando Mercês, 2015/07/08
- Re: [shell-script] Here strings no /bin/sh, Alysson Gonçalves de Azevedo, 2015/07/09
- Re: [shell-script] Here strings no /bin/sh, Julio C. Neves <=
- Prev by Date: Re: [shell-script] Here strings no /bin/sh
- Next by Date: Re: [shell-script] Trocar ícone do yad --notification
- Previous by thread: Re: [shell-script] Here strings no /bin/sh
- Next by thread: Trocar ícone do yad --notification
- Index(es):