Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
Google Site



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Closed Thread
English Japanese Spanish French German Portuguese Italian Powered by Powered by Google
 
Thread Tools Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 03-19-2008
Registrert bruker
 

Bli Dato: Sep 2006
Sted: SG
Innlegg: 353
Fjern siste tegnet av et uttrykk

Hei Alle,

Jeg har et par treff med komma som det siste tegnet.
Kan noen eksperter vise meg hvordan å fjerne det siste tegnet?
Vær oppmerksom på lengden på sikt er reparasjonen ikke.

Inngang:

1,
2,
12,
14,
103,
198,
3006,



Utgang,

1
2
12
14
103
198
3006
Sponsede lenker
  #2 (permalink)  
Old 03-19-2008
Moderator
 

Bli Date: Feb 2007
Bosted: Nederland
Innlegg: 4962
Noen muligheter:


Code:
cut -d"," -f1


Code:
sed '/,$//'


Code:
awk -F, '{print $1}'

Hilsen
  #3 (permalink)  
Old 03-19-2008
Registrert bruker
 

Bli Date: Feb 2005
Sted: Edinburgh, Skottland
Innlegg: 7
Hei, Raynon --

To enkle måter, asusming du bruker en fil:

1. awk-F ',' '(print $ 1)' infile> outfile
2. cut-d ','-f1 infile> outfile

Jeg har siterte komma som skilletegn i begge tilfeller for å vise at du bør bruke anførselstegn hvis avgrense tegnet kunne tolkes av skallet (som $ eller *).

Håper dette hjelper,

John
  #4 (permalink)  
Old 03-19-2008
Registrert bruker
 

Bli Dato: Sep 2006
Sted: SG
Innlegg: 353
Thks John og Frankin,

De jobbet jus fint. !
Cool!

Bare et lite problem, hvordan kan jeg innlemme ovenfor " awk-F ',' '(print $ 1)' "Å det neden koden til setningen i blått? Jeg venter mitt 3dje feltet skal smiliar til for eksempel" 15, Men jeg vil bare fange " 15 ".
Kan du hjelpe meg?


Code:
$1 == "Device" && $2 == "id" {

#print;
unit_no = $3;
flag = 1}

flag > 0 && flag < 4 && $9 == "Device" && $10 == "Sort" {

print flag;
printf ("%s %s\n",unit_no,$0) 
flag++;

}

flag > 3 {flag = 0}


Sist endret av Raynon; 03-19-2008 kl 11:02..
  #5 (permalink)  
Old 03-19-2008
kløver shamrock is offline Forum Advisor  
Registrert bruker
 

Bli Dato: Oct 2007
Beliggenhet: USA
Innlegg: 759
Sitat:
Originally Posted by Raynon View Post
Bare et lite problem, hvordan kan jeg innlemme ovenfor " awk-F ',' '(print $ 1)' "Å det neden koden til setningen i blått? Jeg venter mitt 3dje feltet skal smiliar til for eksempel" 15, Men jeg vil bare fange " 15 ".
Kan du hjelpe meg?


Code:
$1 == "Device" && $2 == "id" {

#print;
unit_no = $3;
flag = 1}

flag > 0 && flag < 4 && $9 == "Device" && $10 == "Sort" {

print flag;
printf ("%s %s\n",unit_no,$0) 
flag++;

}

flag > 3 {flag = 0}


Code:
unit_no=$(echo $3 | awk '{print substr($0,1,match($0,/\,/)-1)}')

  #6 (permalink)  
Old 03-19-2008
Moderator
 

Bli Date: Feb 2007
Bosted: Nederland
Innlegg: 4962
Plassere denne kommandoen før koden i blått for å fjerne komma:


Code:
sub(",","",$3)

Hilsen
  #7 (permalink)  
Old 03-20-2008
Registrert bruker
 

Bli Dato: Sep 2006
Sted: SG
Innlegg: 353
Sitat:
Originally Posted by Franklin52 View Post
Plassere denne kommandoen før koden i blått for å fjerne komma:


Code:
sub(",","",$3)

Hilsen

Hi Franklin,

Thks that's clean.
Sponsede lenker
Closed Thread

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er Av


Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
Slik fjerner nye tegn shihabvk UNIX for Advanced & ekspertbrukere 7 06-18-2009 08:44
Slik fjerner unødvendig tegn vsmurali UNIX for Dummies Spørsmål og svar 7 03-18-2008 12:57
Søketermen og utgang sikt i ønsket felt Raynon Shell programmering og Skripting 28 03-04-2007 02:34
Opprett en Term & Run tegn på dette begrepet the_tical Programmering 1 08-12-2003 10:18
Fjern siste tegnet av Line danhodges99 Shell programmering og Skripting 4 05-21-2003 10:30



Alle klokkeslett er GMT -4. Nå er klokken 02:08.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2010. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0