shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Alterar conteúdo do arquivo direcionando para o mesmo


From: Arkanon
Subject: Re: [shell-script] Alterar conteúdo do arquivo direcionando para o mesmo arquivo
Date: Fri, 7 May 2010 18:49:43 -0300

Em 7 de maio de 2010 18:12, Arkanon <address@hidden> escreveu:
> Em 7 de maio de 2010 17:57, Arthur M. Meskelis
> <address@hidden> escreveu:
>> se você não tiver memória suficiente para alocar a saída do primeiro cat,
>> não dará certo
>> não funciona em todos os casos
>
> Mmm. Entao a operacao eh feita na memoria, e nao num arquivo
> temporario criado automaticamente pelo bash para realiza-la.
>
> Quanta memoria do sistema esta disponivel para isso? Eh TODA a memoria
> disponivel, ou isso eh configuravel? O bash nao tem nenhum dispositivo
> que permita usar uma memoria auxiliar em disco?

Tem mais uma coisa:

Fui usar isso agora num script, e nao rodou:

./a: linha 3: erro de sintaxe próximo do `token' não esperado `('
./a: linha 3: `cat <(cat frutas | grep -v laranja) >| frutas'

Aí lembrei que o bash age de uma forma quando invocado como sh e outra
quando invocado como bash. Na secao [INVOCATION] do manual do bash
esta a explicacao para o misterio:

<cut>
If bash is invoked with the name sh, it tries to mimic the startup
behavior of historical versions of sh as closely as possible, while
conforming to the  POSIX standard as well. <cut> When invoked as sh,
bash enters posix mode after the startup files are read.
<cut>

Entao, a substituicao de processos e algumas outras caracteristicas
nao estarao disponiveis se o shebang for

#!/bin/sh

pois ele sera invocado como se fosse

#!/bin/bash --posix

Para estarem a disposicao, teremos que invocar o bash explicitamente
(e sem o parametro --posix):

#!/bin/bash

-- 
(o_   ------------------     __o
//\   address@hidden   _`\<,
V_/_  --- www.lsd.org.br  (_)/(_)
---------------------------------


reply via email to

[Prev in Thread] Current Thread [Next in Thread]