The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



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 Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 03-17-2009
naminator naminator is offline
Registrert bruker
  
 

Bli Date: Mar 2009
Innlegg: 4
cleandisk og awk

Hei folkens,

Jeg har et script som jeg gjort, men nå jeg ønsker å gjøre noe som dette.
Navnet på skriptet er cleandisk og den har noen alternativer.

cleandisk-I-en
cleandisk-I-v

Når du skriver-I-en bør det gjøre noe, og på samme måte til det andre alternativet, hvis du skriver bare et argument som cleandisk-I, bør skrive ut en melding, og når du skriver ikke noe argument det gir en melding.

Jeg prøvde med awk en om, men jeg tror jeg ikke gjør det riktig.

Takk
  #2 (permalink)  
Old 03-17-2009
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmerer, forfatter
  
 

Bli Date: Mar 2007
Bosted: Toronto, Canada
Innlegg: 2361

Code:
ok=0
while getopts lucky opt
do
  case $opt in
    l|u|c|k|y) echo "You gave the -$opt option"; ok=1 ;;
  esac
done
shift $(( $OPTIND - 1 ))

if [ $ok -eq 0 ]
then
    echo "You didn't enter a valid option"
fi

Sist endret av cfajohnson; 03-18-2009 på 12:25.. Reason: Changed motstridende variabelnavnet: opt \u003d> ok
  #3 (permalink)  
Old 03-18-2009
naminator naminator is offline
Registrert bruker
  
 

Bli Date: Mar 2009
Innlegg: 4
Takk, men

Takk for hjelpen, men

Hvis du må oppgi minst to argumenter som cleandisk-I-V og dersom du skriver bare én det gir noen melding.

En annen ting, hvis jeg skriver dir Jeg ønsker etter argumenter som:

cleandisk-I-V / hjem

Hvordan kan jeg lagre "/ home" til en variabel?

Takk,
  #4 (permalink)  
Old 03-18-2009
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmerer, forfatter
  
 

Bli Date: Mar 2007
Bosted: Toronto, Canada
Innlegg: 2361
Sitat:
Originally Posted by naminator View Post
Takk for hjelpen, men

Hvis du må oppgi minst to argumenter som cleandisk-I-V og dersom du skriver bare én det gir noen melding.

En annen ting, hvis jeg skriver dir Jeg ønsker etter argumenter som:

cleandisk-I-V / hjem

Hvordan kan jeg lagre "/ home" til en variabel?

Det allerede er i en potitional parameter: $ 3

Etter behandling av valg, vil det bli i $ 1.

Code:
opts=IV ## Put the option letters you want to use in $opts
ok=0
while getopts "$opts" opt
do
  case $opt in
    I) echo option I; ok=$(( ok + 1 )) ;;
    V) echo option V; ok=$(( ok + 1 )) ;;
  esac
done
shift $(( $OPTIND - 1 )) ## remove options; /home will now be $1

if [ $ok -eq 0 ]
then
   echo You did not give any options >&2
   exit 1
else
   echo You entered $ok options
fi

if [ $# -gt 0 ]
then
   echo "The remaining arguments are:"
   printf "  %s\n" "$@"
else
   echo "There are no arguments"
fi
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




Alle klokkeslett er GMT -4. Nå er klokken 01:17.


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-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0