The UNIX and Linux Forums  

Go Back   O UNIX e Linux Forum > Top Fóruns > UNIX para Dummies Perguntas & Respostas
.
google unix.com



UNIX para Dummies Perguntas & Respostas Se não tiver certeza de onde se pode postar uma pergunta Unix ou Linux, postá-lo aqui. Todos os UNIX e Linux novatos bem vindos!

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
Para remover linha nova personagem shihabvk UNIX & avançada para usuários experientes 7 06-18-2009 08:44
bash enquanto lida como remover \ n caracteres papasj Programação Shell Script e 3 05-25-2009 10:24
Remover último caractere de um prazo Raynon Programação Shell Script e 6 03-20-2008 06:04
Tentar remover único personagem a partir de uma linha Iz3k34l UNIX para Dummies Perguntas & Respostas 5 07-07-2007 02:29
Remover Última Caracteres da Linha danhodges99 Programação Shell Script e 4 05-21-2003 10:30

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 03-11-2008
vsmurali vsmurali is offline
Usuário
  
 

Join Date: Mar 2008
Posts: 5
Question Como remover caracteres estranhos

Oi,

Estou a tentar capturar o servidor de e-mail me carregar automaticamente.

Esta é a forma como ela vai

svrload \u003d `uptime | awk '(print $ 11)'`

Agora, este devolve um valor dizer "1,39".

Como é que tira a "," a partir do valor devolvido e convertê-lo em um número inteiro de comparar com um limite?

Obrigado
Murali
  #2 (permalink)  
Old 03-11-2008
ShawnMilo ShawnMilo is offline
Usuário
  
 

Join Date: Jun 2006
Lugares: 252
Para tira fora o último caracter:

echo "1,39", | perl -pe 's /.$//'

Saída: 1,39



Se pretender apenas tira uma vírgula ao largo e ignorar tudo o mais, substituir o período em que regex com uma vírgula.

ShawnMilo
  #3 (permalink)  
Old 03-11-2008
vsmurali vsmurali is offline
Usuário
  
 

Join Date: Mar 2008
Posts: 5
Thumbs up

Incrível, ela funciona. Agradecemos muito.

Can you pls fornecer uma explicação pouco sobre este assunto?

Será esta a única forma de fazê-lo (ou) existe alguma outra forma também?

Seria possível ronda o número também?

Obrigado
Murali
  #4 (permalink)  
Old 03-11-2008
ShawnMilo ShawnMilo is offline
Usuário
  
 

Join Date: Jun 2006
Lugares: 252
You're welcome. Há muitas maneiras de fazer isso.

Eis a explicação:

echo "1,39", | perl -pe 's /.$//'

perl -ep
Isto exige perl. O "p" causas Perl a atravessar a entrada para a saída, se é ou não modificado ao longo do caminho. O "E" indica a Perl que a expressão (código) vem a seguir.

A expressão é uma simples substituição regex. O período corresponde a qualquer carácter, eo cifrão significa "fim de linha". Portanto, esta expressão corresponde a qualquer carácter regular, no final da linha. A segunda parte da expressão regular foi deixado vazio, por isso, se a primeira parte correspondências, é substituído por nada.

Aqui está mais uma expressão regular verbosos, em Perl sintaxe, apenas FYI.

$ linha \u003d ~ s / $ Fred / Barney /;

Aqui, vou substituir "fred" no final da linha com "Barney". No curto exemplo, eu queria eliminar algo, então não havia nada entre os dois últimos transmitir-barras. Além disso, eu não uso a "variável \u003d ~" sintaxe, porque, em um Perl um-liner na linha de entrada é assumida por Perl. Pode também ser explicitamente referida com o $ _.

Portanto, estes dois são idênticos:

echo "1,39", | perl -pe 's /.$//'

echo "1,39", | perl -pe '$ _ \u003d ~ s /.$//'

Finalmente, o "\u003d ~" $ _ sintaxe conjuntos para o resultado do funcionamento da expressão regular substituição sobre ela. Na versão mais curta que está implícito, e Perl compreende-la.

ShawnMilo
  #5 (permalink)  
Old 03-11-2008
vsmurali vsmurali is offline
Usuário
  
 

Join Date: Mar 2008
Posts: 5
Smile

legal.

Obrigado por uma explicação detalhada.

Eu sempre quis saber perl linguagem, mas nunca teve ao seu redor.

Obrigado

Murali
  #6 (permalink)  
Old 03-11-2008
ShawnMilo ShawnMilo is offline
Usuário
  
 

Join Date: Jun 2006
Lugares: 252
Eu prefiro Python, mas você não pode vencer Perl um liners bastante complicada para se fazer as coisas em um script ou na linha de comando.

A maior parte do que eu tinha de explicar acima foi expressão regular sintaxe, que é toda uma outra bola de cera. Não deixe regexes assustar longe de você Perl.

Eu recomendo altamente Jeffrey Friedl do livro "Mastering Regular Expressions". Acho que a edição atual é a terceira. Leia os primeiros 80 ou mais páginas, e você será uma regex campeão.

ShawnMilo
Closed Thread

Marcadores

Tags
perl, perl regex, regex, expressões regulares

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 07:51.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0