The UNIX and Linux Forums  


Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

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 Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 03-17-2009
naminator naminator is offline
Geregistreerde gebruiker
  
 

Join Datum: maart 2009
Posten: 4
cleandisk en awk

Hi guys,

Ik heb een script dat ik gedaan maar nu wil ik iets doen als dit.
De naam van het script is cleandisk en heeft een aantal opties.

cleandisk-ik-een
cleandisk-I-v

Wanneer u het type-I-een moet iets doen en haar op dezelfde manier aan de andere optie, als u uitsluitend een argument willen cleandisk-I, moet het afdrukken van een bericht, en wanneer u typt geen argument geeft het een ander bericht.

Ik heb geprobeerd met een if awk, maar ik denk dat ik ben niet de goede manier doen.

Bedankt
  #2 (permalink)  
Old 03-17-2009
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmeur, auteur
  
 

Join Datum: maart 2007
Plaats: Toronto, Canada
Berichten: 2.361

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

Laatst gewijzigd door cfajohnson; op 03.18.2009 12:25.. Reden: Veranderde tegenstrijdige variabele naam: opt \u003d> ok
  #3 (permalink)  
Old 03-18-2009
naminator naminator is offline
Geregistreerde gebruiker
  
 

Join Datum: maart 2009
Posten: 4
Bedankt, maar

Bedankt voor de hulp, maar

Als u om ten minste twee argumenten zoals cleandisk-I-V, en als je slechts een type geeft sommige bericht.

Nog een ding als ik typ de r. Ik wil na de argumenten zoals:

cleandisk-I-V / home

Hoe sla ik de "/ home" aan een variabele?

Bedankt,
  #4 (permalink)  
Old 03-18-2009
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmeur, auteur
  
 

Join Datum: maart 2007
Plaats: Toronto, Canada
Berichten: 2.361
Citaat:
Oorspronkelijk geplaatst door naminator View Post
Bedankt voor de hulp, maar

Als u om ten minste twee argumenten zoals cleandisk-I-V, en als je slechts een type geeft sommige bericht.

Nog een ding als ik typ de r. Ik wil na de argumenten zoals:

cleandisk-I-V / home

Hoe sla ik de "/ home" aan een variabele?

Het reeds in een potitional parameter: $ 3

Na verwerking van de opties, zal deze in $ 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

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 09:17 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0