Talvez não seja a melhor, mas uma solução rápida e prática pode
ser o "unclutter".
Ele é antigo e pequeno, mas versátil, admitindo parâmetros.
Dê uma googlada!
A lista é sobre shell, lembro então que você pode:
- carregar em background a qualquer tempo para obter o efeito
- matar o processo se e q
Só precisa uma quantidade de segundos inteira?
Se sim, seria viável a substituição abaixo para o sleep?
read -t $durma
-
Esta lista não admite a abordagem de outras liguagens de programação, como
perl, C etc. Quem insistir em n
Eu não ia falar em fifo, mas já que você falou, não seria mais prático e
versátil estabelecer uma comunicação bilateral atráves de um fifo, ou
usar dois "half-duplex"?
mkfifo np
read
>Um segundo programa irá enviar sinais para ele e com base nestes sinais irá
estabelecer uma comunicação usando f
difícil achar outra de nível próximo. Não, eu não quero criar ou administrar
essa outra, hipotética.
Quero continuar aqui, também. ;)
Cordialmente,
mop
PS. espero que tenham percebido o espírito construtivo destas palavras
Que desafio? Isso é bico para o shell:
[EMAIL PROTECTED]/tmp$ m=7;while read t;do [ ${#t} -le $m ]&&echo $t;done<1
joao
maria
carlos
paraiba
-
Esta lista não admite a abordagem de outras liguagens de programação, como
perl, C
### Linha com alguns símbolos extras ;)
S=,
L="dd-mm-yy,hh:mm:ss,no;me do_arquvio,tipo,versão,"
l=${L//$S/};l=$[${#L}-${#l}];echo $l
--
>From: "Elvio Barbalho"
>estou precisando contar quantas virgulas tenho em determinada
De curioso, via google, achei um man do ksh solaris.
http://wagoneers.com/UNIX/SOLARIS/MAN/ksh.man.txt
Olhando rapidamente pareceu semelhante ao bash nas expansões.
Na solução que eu postei, acho que teria de trocar o "$[" por "$((",
mudando o fechamento, logicamente.
Ainda há o detalhe da versão
Pelo que eu entendi você já tem o script pronto.
Nesse caso eu colocaria no início dele um loop que fica "enrolando", sem
gerar novos processos, até a disponibilidade do arquivo, algo assim:
f=/path/arquivo # este é o arquivo esperado
t=600 # tempo em segundos entre verificações de existência
whi
Ao que me parece uma questão muito parecida com a sua foi colocada nesta
thread:
http://br.groups.yahoo.com/group/shell-script/message/24746
Infelizmente, pelo que me lembro, só tivemos 1 retorno informando problema.
Mas acho que várias idéias foram colocadas ali.
Dê uma olhada e veja se é possív
echo $L;echo ${L%}
5c4o2go-9qfshm-fbfkb7bb-1-fbknrfix-2uqn:20080118:203837
5c4o2go-9qfshm-fbfkb7bb-1-fbknrfix-2uqn:20080118:20
--
>From: "Adelson O. Junior"
>Como eu removo os ultimos 4 caracteres da linha abaixo:
ikami,
mais uma contribuição:
Caso identico ao seu, só que o sequencial estava em arquivo:
http://br.groups.yahoo.com/group/shell-script/message/24978
-
Esta lista não admite a abordagem de outras liguagens de programação, como
Essa tradução é padrão para transmissão.
Veja, coloquei isto no formulário do google, no browser:
A [EMAIL PROTECTED]
Como o metodo é GET a url resposta já veio assim:
http://www.google.com.br/search?num=20&hl=en&as_qdr=all&q=A+B%40C&btnG=Search
O ngrep, engatilhado como sniffer na
Certamente há muitas formas de fazer isso. Vou colocar duas para estilos de
comando diferenciados.
A primeira parece mais alinhada com o que foi pedido:
no topo do script se insere a linha:
. log
o source log poderia ser assim:
[ $LOG ]||{ LOG=/tmp/${0##*/}.log;LOG=$LOG $0 $* 2>&1|tee $LOG;exit;
linha de comando
# encerra, pois o script já foi "rechamado" da forma desejada
exit
fi
A diferença de escrita é mera "semântica" tolerada pelo shell.
Espero que tenha ajudado.
--
>From: Gemayel Alves
>Es
point=/home/eduardo/teste/arquivo.doc
dir=${point%/*}
file=${point##*/}
echo $point $dir $file
/home/eduardo/teste/arquivo.doc /home/eduardo/teste arquivo.doc
--
>From: Eduardo Lucas
>tenho a seguinte linha:
>
>/home/eduardo/teste/a
sort -n -t. -k4
Só deve funcionar para k.k.k.x ;)
Que tal já obter ordenado?
--
>From: Israel
>Tenho aqui uma base de dados com uma lista de IP's e preciso listar os
>mesmos ordenadamente.
>
>mysql -u root -e "select ip from cliente
Dê uma olhada nessas duas threads onde lembro de ter dado palpite.
http://br.groups.yahoo.com/group/shell-script/msearch?date=any&DM=&DD=&DY=&DM2=&DD2=&DY2=&AM=contains&AT=mop2&SM=contains&ST=cron&MM=contains&MT=&charset=utf-8
Histórico delas no fundo das pág
Acompanhei a thread até a primeira postagem do Barcellos.
Eu sugeriria algo na mesma linha dele.
Ainda assim acho muito estranho haver uma necessidade dessas envolvendo
o nagios. Será que ninguém mais teve esse problema e não existe uma
solução intrínseca. Eu não sei nada sobre nagios e infelizmen
h em loop para essa
função.
Caso aquela recomendação funcione, ainda assim não sei se é a melhor opção,
mas talvez resolva a freqüente divergência citada acima.
Congratulations!
mop
--
>From: ikami
>
>Não sei se esse problema
O que é md5 de diretório?
Bem acho que você pode armazenar um snapshot de uma listagem, com:
DIR=/etc/rc.d
/bin/ls -li $DIR
ou:
find $DIR -exec /bin/ls -li {} \;
contendo o nível de detalhamento que deseja. Quando ok redireciona a saida
para arquivo com, por exempolo:
>/tmp/.dir.ref
e:
md5sum /
Olá, agora ficou mais claro. Olha eu tenho um script que é executado na
inicialização e que faz algo assim, mas somente para elementos citados
individualmente. Permite checar atributos e opcionalmente md5 de arquivos.
Como ele faz muitas outras coisas, coloco apenas a parte inicial, que
corresponde
Opa Julio,
tomo a liberdade de passar um link relacionado, pois me parece um
hábito que a maioria de nós tem de chamar o gnu de linux, embora a grande
maioria de nós saiba que linux é realmente apenas o kernel existente nas
distribuições unix-like baseadas no núcleo do Torvalds.
http://idgnow.uol.
Eu achei 1 ON (0 OFF)!
Parece uma daquelas "tarefinhas para casa"...
Ôoob, acho que vou fazer; mas não sei explicar. ;)
c=1
y1=1
z=
x=" `echo -n {1..999}` "
while [ ${#x} -gt 1 ];do
y=${RANDOM:2}
y=$[10#$y]
[ "$x" != "${x/ $y }" ]&&{
d=$[$y-$y1];d=${d/-}
[ $d -lt 7 ]&&continue
z="$
Parla, del carrello rosso :)
O tráfego na lista está tão baixo que vou dar mais uns pitacos.
Que forma light de coibir os malandros no pabx! ;)
O código de minha mensagem anterior foi feito para colar diretamente no
prompt e "mandar ver". Ao final o resultado desejado deveria estar em $z,
daí er
http://br.groups.yahoo.com/group/shell-script/message/25202
Concentrando,
variável:
http://br.groups.yahoo.com/group/shell-script/message/25202
via pipe:
echo 1/2/3/4/5|{ while read -d/;do :;done;echo $REPLY;}
-
Esta lista não admite a abordagem de outras liguagens de programação, como
Claro, é só não criar nenhum processo.
Não chame nenhum programa externo, use só o shell atual.
Ou você quer que o shell use um pid pré determinado?
Esse eu não sei fazer diretamente, mas tentaria chegaria nele assim:
prompt$ cat pid
[ $1 -gt $$ ]&&{ echo $$;$0 $*&exit;};echo processo atual $$ :P
Este é pequeno e parece-me que obtém links a partir de qualquer página:
http://www.google.com.br/search?q=bin%2Fbash+%22save+video%22+site%3Ayi.org
--
>From: newerton santos
>> estou precisando baixar alguns arquivos se um site, ond
Boa Fernando!!!
Para o caso de um mísero sistema, só com shell, uma solução 100% bash, desde
que este tenha sido compilado com suporte a tcp:
exec 3<>/dev/tcp/www.google.com.br/80
D=;echo -e "HEAD /intl/pt-BR_br/images/logo.gif HTTP/1.1\r\n\r\n" >&3
while read -t9 L;do [ ${L%% *} == Last-Modi
Talvez você encontre algo no link "exemplos" em
http://planeta.dyndns.org/unix/index.htm
ou no link "funcs" em
http://planeta.dyndns.org/scripts/index.htm
possivelmente nada pronto, mas uma busca por "tecla" ou "key" nos
textos pode ajudar. Pode tentar achar "tput" e "read" também.
---
Um exemplo rápido usando o bom e velho comando "read": :)
TIMEOUT='-t30'
UP=$'\x1b\x5b\x41'
DOWN=$'\x1b\x5b\x42'
KEY=;STRING=
while [ ! $KEY ]&&read -s -r -n1 $TIMEOUT;do
[ ${#REPLY} -eq 0 ]&&KEY=ENTER
STRING="$STRING$REPLY"
[ "${STRING}" != "${STRING/$UP/}" ]&&KEY=UP
[ "${STRING}" != "${STRI
Não sei se funciona, posso estar cometendo um erro básico, mas o "instinto" me
impeliria a tentar de imediato:
send "ls -l >>/tmp/myls\r"
PS. nao sei se o backslash (x0d) r da linha vai sobreviver no email, mas
acho que a resposta é compreensível
-
Você já tem uma função!
Então vai outra: :)
#--
key(){
TIMEOUT='-t30'
UP=$'\x1b\x5b\x41'
DOWN=$'\x1b\x5b\x42'
KEY=;STRING=
while [ ! $KEY ]&&read -s -r -n1 $TIMEOUT;do
[ ${#REPLY} -eq 0 ]&&KEY=ENTER
STRING="$STRING$REPLY"
[ "${STRING}" != "${STRING/$UP/}" ]&&KEY=UP
[ "${STRIN
Isto deve te dar a linha alvo do exemplo:
grep -A1 "^energy au$" file|tail -n1
As palavras chaves se repetem?
Se for muito complexo eu iria de shell, mas há cobrões em awk na lista.
Acho que o melhor seria você dar um exemplo, curto se possível,com entrada
operações e resultado desejado.
---
Rabiscando uma função rápida, apelando para o programa bc e considerando que:
- somente a primeira linha que sucede cada campo chave é calculada
- so um campo chave é informado por vez
- uma única constante é adicionada, devendo seu sinal ser informado
- não entendi bem a linha numérica... :p
#---
Como em links dificilmente existirá virgula sugiro que use o sed com
s,??,???
Isto pode não se aplicar ao seu caso, mas uma coisa que eu aprendi há
muito tempo é que em páginas html com links a melhor opção é sempre o caminho
relativo e não o absoluto, sempre que possível. Com isso é possível
move
Não sei se seria isso, veja só acrescentei o interpretador na primeira linha e
seguindo o mesmo ritual:
[EMAIL PROTECTED]/tmp$ head -n2 teste
#!/bin/bash
key(){
[EMAIL PROTECTED]/tmp$ . teste
Fri Feb 29 23:00:20 hrN 2008
[EMAIL PROTECTED]/tmp$ teste
Fri Feb 29 23:00:31 hrN 2008
[EMAIL PROTECTED]/t
ls -1tr diretorio # só isso
--
>From: "alisson3at110"
>
>Estou fazendo um script que envia aruivo via FTP para outro servidor,
>esta funcionado, porem coloquei no script para verificar se o arquivo
>existe, e como pode ser varios ar
Mais uma para a tua listinha, com uma função, mas não conheço solaris:
PS1=---\
--- echo $0
ksh
--- $0 --version
version sh (AT&T Research) 1993-12-28 s+
--- cat s
w(){
W=;while [ ${#W} -lt $1 ];do R=${RANDOM:3};W="$W${2:
Não entendi a dúvida, você já sabe tudo é só fazer...
Até citou ". debugar". A questão seria como passar parâmetros?
Como gosto de ser direto, vai uma base para o seu debugar, que recomendo não
tenha o flag x (executar):
#--
export FGLSQLREPLAY=1
export FGLSQLDEBUG=3
fglrun /home/caminho
Por que for?
Apenas complementando a resposta do Flávio, você precisa alterar o IFS para
usar o for, como tinha pedido.
Se tiver outros for, um echo, ou alguma outra coisa que possa precisar de
IFS diferente, poderá haver problemas.
Não sei se cabe no seu caso, mas para leitura de linhas eu reco
Como url é algo bem complexo, vai algo no grito, para domínios públicos.
Não sei se funcionaria 100%.
dom(){
d=`echo $1|cut -d/ -f3`
until whois $d|grep -q 'Domain Name:';do d=${d#*.};done
echo $d
}
$ dom
http://br-linux.org/2008/3-vagas-de-suporte-de-ti-no-centro-de-florianopolis-ultima-cham
melhor maneira de fazer isto.
Nem mesmo estou certo se era essa a real necessidade do postante original.
--
>From: mop
>Não sei se funcionaria 100%.
>
>dom(){
> d=`echo $1|cut -d/ -f3`
> until whois $d|grep -q '
Acho que ele já faz isso, te mostrando um arquivo texto. :)
Creio que o que você quer está a seguir.
Você precisa um socket!
Este é um dos que eu gosto:
http://www.google.com.br/search?as_epq=micro_inetd
Em um terminal local:
micro_inetd 8080 /bin/date
Em um browser local:
http://localhost:8080/
Com bash:
while read -d\<;do echo ${REPLY%>*};done
--
>From: "arthurbrsp"
>Como fazer um programa em bash para mostrar somente a linha que quero?
>por exemplo:
>Mar 12 11:23:04 rede18-server42 postfix/smtp[5383]: 0CDF01887A7:
>to=<[EMAIL PROTECTED]>, relay=
Desculpem-me, ando meio distraído:
while read -d\>;do echo ${REPLY#*<};done
--
>From: mop
>
>Com bash:
>while read -d\<;do echo ${REPLY%>*};done
-
Esta lista n
Fazendo um FORK BOMB?
Já viu que você está chamando sua função cvs de centro dela, recursivamente?
--
>Bom dia. Estou com a seguinte dificuldade:
>
>cvs(){
>zenity --entry --title "Login no CVS" --text "Sua senha" --hide-text |
>cvs login
>
>}
>
>Ao exec
Se mudar o nome da sua func não resolver, achei isto por aqui, nem sei,
acho que está sem uso atualmente.
cvslogin(){
expect -c "
log_user 1
spawn cvs login
expect \"word: \"
send -- \"$1\r\"
interact
"
}
Era usado assim:
cvslogin mypass
para usuário default, nem lembro, mas usava só para downlo
Mais uma carta para tua manga:
Ainda não usei isto, mas já testei com o "su". Dê uma espiada,
http://br.groups.yahoo.com/group/shell-script/msearch?query=sshpass
--
>From: ednei.felipe.rodrigues
>sim, eu vi, já corrigi isso...
>no entanto, minha dificuldade
Como pode, só tem dois programas e um você já usa.
Peguei e colei a função a partir daqui:
http://br.groups.yahoo.com/group/shell-script/message/25656?l=1
Pelo que sei o cinelerra não usa mais cvs, mas aconteceu isto no prompt:
$ { expect -v;/usr/bin/cvs -v;}|grep -i ver
expect version 5.43.0
Co
Já está mais do que claro que você está absolutamente no começo com shell.
Então não adianta passar lógica.
Implementando o que o Tiago sugeriu:
A=
while read linha;do
[ $A ]||{
[ "$linha" == "symbolic names:" ]&&A=1
continue
}
echo "$linha"
doneFrom: ednei.felipe
>Só pra ajudar, aquele p
Salviano,
legal sua solução parametrizada.
Só para ser diferente e exercitar um pouco de shell:
com funçao
sem continue
com start
com stop opcional
permite multiplos blocos start/stop
f(){ Y=;while read L;do [ "$3" -a "$3" == "$L" ]&&Y=;[ $Y ]&&echo "$L"
[ "$2" == "$L" ]&&Y=1;done<$1;}
Onde: $1=
Agora que você consertou sua base recomendo que corrija o seu script.
Se todos os emails tem ok ele parece desnecessário.
Para que não apareçam mais emails repetidos recomendo, na sua
linha de adição de mails, algo como:
grep -q '[EMAIL PROTECTED] ' arquivo_saida||sua_velha_linha_de_incluisao
Im
A menos de alguma falha via email, esta é a sua linha dividida:
NOVO=`echo $ARQ | tr \
'áéíóúàâêôäëöüãõçÁÉÍÓÚÀÂÊÔÄËÖÜÃÕÇ' \
'aeiouaaeoaeoaocaeiouaaeoaeouaoc' | tr ' ' '-' | tr 'A-Z' 'a-z'`
Acho que a solução fica clara.
Como o shell aceita o "\" recomendo que o use para "empilhar" as duas listas
f
Nesses casos eu prefiro realmente testar alguma resposta do serviço, afinal
porta aberta não quer dizer servidor operante.
Exemplo para bash com suporte a tcp:
$ exec 3<>/dev/tcp/smtp.gmail.com/25;R=;read R<&3;exec 3<&-;[ ${R:0:3} = 220 ]
$ echo $?
ps -heo pcpu,pid,comm|sort -r|head
--
>From: "Alexandre Trindade"
>Só que o top não esta ordedando por consumo de CPU.
-
Esta lista não admite a abor
Complementando:
Espero que não cheque o serviço no próprio servidor.
Se a rede ficar indisponível, você não vai receber nenhum email.
Bem, não deveria receber mesmo, já que no servidor está tudo ok. ;)
--
>From: "buzi_na"
>
>É tipo assim, ele checa se a po
Há muitas possibilidades.
No arquivo a seguir a linha em branco separa a parte que será interpretada
pelo shell (acima dela) da que será "echoada" (abaixo).
Veja:
PS1='prompt> '
prompt> cat s
D=;while read linha;do
[ $D ]||{ [ "$linha
Que imagem?
Onde está cada imagem?
Acho que isto te dará o caminho, basta adaptar para o seu caso:
find / -type d|while read D;do
F=pasta.${D##*/}.jpg
[ -e $D/$F ]||{
echo cadê dir=$D file=$F
}
done
--
>From: "podestafox"
>
>Tenho alguns padrões
Ricardo,
considerando sua tentativa inicial mais o que o Paulo disse, parece-me
que o -T do tar pode pegar a lista a partir de stdin.
Nunca usei essa opção, acabei de olhar agora a listagem do --help.
Assim, experimente também:
find . -maxdepth 1 -type l ! -name "PRLiderancas"|\
tar chjvf /opt/int
Pessoal,
desenterrei este tópico pois fiquei sabendo da existência na praça de
um novo livro (1.a edição) sobre shell script, em portugues.
O nome do autor é bastante conhecido.
Pelo que entendi até criou um site para a obra.
A conferir:
http://www.shellscript.com.br/
Desculpem-me caso isso já te
Experimente:
sed -n "/Ubunta_$version_ubuntu=/{s///;p}" version
ou:
sed -n '/Ubunta_'$version_ubuntu'=/{s///;p}' version
--
>From:
>
>Entretanto apareceu outro com mais prioridade e é referente ao comando
>SED.
>
>O código é este:
>
>cd ~/Desktop
>version_
Isso não tem a ver com o sed. O sed recebe uma string passada pelo shell.
O shell é que faz isso.
Em caso de dúvida faça isto:
sed ...
e depois:
echo sed ...
e verá a linha de comando montada na chamada do sed, ou ative o bom e velho
set -x # lembra!?
Quanto à nova questão para não mexer no que
Aquilo era problema com o "read" no while (sugiro releitura).
Pelo que vi no "for" não tem read, então este último está liberado
para ser usado dentro das chamadas.
Acho que não precisa ler o status. Um cancelamento ou outra anormalidade
deverá afetar o valor de "escolhas".
Não uso gnome ou kde o
Tiago, achei muito interessante e já fui testar.
Infelizmente aconteceu o que eu esperava:
PS1='$ '
$ echo "$IFS"|xxd
000: 2009 0a0a ...
$ IFS='?|'
$ echo "$IFS"|xxd
000: 3f7c 0a ?|.
$ unset IFS
$
Estás a usar aquele comando que aparece neste tópico?
Poderia fornecer a saída (após ele), para seleção múltipla, de:
echo "$escolhas"
Acho exemplos reais muito mais interessantes! :)
--
>From: "miguelcm86" <[EMAIL PROTECTED]>
>Date: Thu, 24 Apr 2008 17:44
Vi esta questão e não lembro de ter visto a resposta.
1. não sei ( e considero off ;)
2. Já tentou:
--separator=$'\n'
ou:
--separator="
" # isso mesmo, em duas linhas
Desculpem, caso a questão 2 já tenha sido resolvida.
miguelcm86, acho que isto tem a ver com aquele IFS que te foi sugerido, que
n
Eu uso o bzip2 porque, até onde sei, é a opção genérica de maior compressão
disponível.
Reparei que o tar cj chama simplesmente bzip2 para a compressão. É só ver
com o comando ps enquanto o tar está em ação.
Acabo de fazer este teste:
$ PS1='$ '
as em portugues, como já fazem, sem delay em:
http://br.groups.yahoo.com/group/shell-script/messages?o=1
------
>From: MrBiTS
>
>mop e lista
>
>Como essa questão foi tornada pública, alguns pontos devem ser definidos:
>
>- - Zenit enquant
Tiago, já que você está de boa vontade e sed não é a minha praia:
Estranhei o relato no post do Cézar, pois pelo pouco que sei o default de
de substituição no sed é apenas a primeira.
Fiz aqui e aconteceu o que eu esperava.
$ echo 1vazio2vazio3|sed s/vazio/qualquercoisa/
1qualquercoisa2vazio3
Co
Acredito que esta não seja sua solução.
Deverão aparecer outras mais apropriadas.
Mas para ir brincando, eis uma abordagem muito questionável... :)
A função:
gb(){
W=$*
W=^${W// /$|^}$
[ `tr ' ,.' '\n'|grep -E "$W"|sort -u|wc -l` -eq $# ]
}
O arquivo de teste:
-rw-r--r-- 1 xio xio 2388632 2008
Eis uma idéia para um campo por variável, partindo do teu comando base.
Para uma linha por variável é só simplificar.
Talvez prefira o código do file system, é só corrigir.
root# cat s
x=0
while read d;do x=$[x+1]
eval "d$x=${d% *};f$x=${d#* }"
done< <(fdisk -l|grep ^/dev/hd|cut -c1-8,56-)
for x
Isso é para bash, ok!?
Comece com coisas pequenas.
Pense modularmente! ;)
$ t=;date|read t;echo t=$t
t=
$ t=;read t< <(date);echo t=$t
t=Wed May 7 14:09:40 hrN 2008
$ $0 --version
Ok, confirmei!
Antes de eu tentar entender,
==> por que você usa esse "estilo histórico" de chamada de script?
Viu como é boa essa do modular. :)
O problema continua o mesmo, mas ele ficou pequeno. :))
--
>From: ednei
>
>fiz assim:( coloquei num arquivo ch
u \o/ (eu tô fora!, mas é mais portável.)
$ t=;while read x;do echo $x;done< <(ls -1d tw*);echo "|$t|"
sh: syntax error near unexpected token `<'
$
# RATIFICADO!
$ $0
$
# IDEM!
Bem, chega de história por hoje. Fui!
--
|F
ter a
>linha do próprio grep aparecendo na resposta de $(ps aux|grep [k]ate)
>que é tradicional...
>PS: outro exemplo parecido: "ls > dir.txt", o dir.txt aparece na lista...
>
>
Acho que foi num site desses que vi algo como a idéia relatada:
http://www.google.com.br/search?q=%22atualiza+fontes%22+compila
Não lembro bem, mas acho que não era para um sistema todo, mas sim
por partes ou por pacotes.
Tinha vários scripts relacionados. Tem que olhar.
A net deve estar cheia d
Embora o universo não tenha ficado claro acho que isto pode ser um
ponto de partida:
grep -A999 '^| SOURCE' file|grep -B999 ^+|grep -c '^| data'
-
Esta lista não admite a abordagem de outra
Desculpem, faltou o m2:
grep -A999 '^| SOURCE' file|grep -m2 -B999 ^+|grep '^| data'
-----
>From: "Roberto Alves" <[EMAIL PROTECTED]>
>Date: Fri, 9 May 2008 14:05:00 -0300
>
>Mop,
>eu levei o arquivo pro Linux e testei mas não funcionou não.
>Queria ver por curiosidade.
>Achei que o comando separava o que vinha an
"file" (o teu txt) que mostrei.
--
>From: "Flavio Junior"
>
>Eu devo ter entendido errado, mas...
>
>Da uma olhadinha:
>http://rafb.net/p/FAYfMg76.html
>
>--
>
>Flavio do Carmo Jr
>
>2008/5/9 mop <[EMAIL PROTECTED]>:
Não sei o que seria um "jeito melhor", mas seguindo a sua especificação
inicial, a função número_um2pontos :) parece atender, exceto a cor azul. :)
n12p(){
while read R;do
t=${R%:*};[ "${t//[0-9]/}" ]||R="\e[33;1m${R/:/\e[0m:}"
echo -e "$R"
done
}
$ n12p From: "bsjogos"
>
>Eu sei botar cor,
--
>From: "Roberto Alves"
>
>Mop obrigadao pela ajuda!
>Ainda não testei a sua opção mais nova. Vou tentar na proxima semana.
>Flavio,
>é isso mesmo. Vlw.
>Mas vou ter que descobrir porque o sh ta dando a msg de:
>
>sed: 602-404 Function sed
O sed não é do meu departamento, anyway:
f(){
p=$[${#a}-16]
printf ${a:$[p+9]:3}-${a:p:8}${a:0:p}.${a:$[p+13]}
}
$ a=Nome20080424-012.pdf
$ echo mv -i $a $(f)
mv -i Nome20080424-012.pdf 012-20080424Nome.pdf
$
Agradeça ao Senhor!
eval $t
--
>From: "miguelcm86"
>
>#!/bin/bash
>t='gksudo "aptitude -y safe-upgrade"'
>$t
>
>portanto ele tem de guardar esta string e depois quando faz $t ele rodará..
--
Se não existe output em &1 a idéia do Eri é melhor.
Caso contrário pode tentar com:
$ echo $x
$ x=`{ ls 2>&3;} 3>&1`
$ echo $x
/bi
Legal você reforçar o detalhe das aspas!
Com freqüência os mais novos esquecem que em alguns comandos,
sem as aspas,
os caracteres consecutivos
com exemplar contido em IFS
são substituidos por um único espaço.
Apenas acrescentaria, que vejo o ENTER citado como intrínseco ao echo.
Aquele do tecla
101 - 187 de 187 matches
Mail list logo