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.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
g + + en de-r optie eternalflame Hoog Niveau Programmering 0 04-14-2008 02:57 PM
-n optie Ravi raj kumar Programmeren en Shell Scripting 1 01-03-2008 09:20
ps: 65535 is een ongeldige niet-numeriek argument voor de optie-p gogogo SUN Solaris 5 11-19-2006 06:20 PM
su optie lesstjm UNIX for Advanced & Expert Gebruikers 1 11-02-2005 01:54 PM
cut-f optie 435 Gavea UNIX voor Dummies Questions & Answers 1 11-10-2003 05:50 PM

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-2008
gurukottur gurukottur is offline
Geregistreerde gebruiker
  
 

Join Date: april 2006
Posts: 40
optie, gevolgd door het nemen van de volgende optie als argument ontbreekt met getopts

Hi all,

Ik parsing command line opties met behulp van getopts.

Het probleem is dat de verplichte argument volgende opties ":" neemt volgende optie als argument als het niet gevolgd wordt door een argument.
Hieronder is het script:

terwijl getopts: HD: t: s: l: f: opt
doen
case "$ opt" in
-h | - \?) gebruik;;
-d) DEBUG \u003d true; export SCRIPT_LOG_LEVEL \u003d DEBUG;;
-t) DEVTYPE \u003d "$ optarg";;

-s) SIG_IP \u003d "$ optarg"; export SOCKS5_SERVER \u003d "$ optarg: 9001";;
-l) HOST_LOGIN \u003d "$ optarg";;

-p) PASSWORD \u003d "$ optarg";;

-f) cl_cfile_specd \u003d 1
export RUNNING_CONFIG_FILE \u003d "$ optarg";;

*) LOGMSG "Onbekende param gebruik";;
esac
gedaan
als ik het script als:
$. / script.sh-d-t rdsk-s 12.3.4.5-l goeroe-p-f / usr / local / sc.conf
de optie-p-f met als argument.

Please help me hoe een fout te gooien en het script exit als verplicht argument niet wordt doorgegeven aan het script.

Ook hoe om te gaan met opties hebben - dat wil zeggen - logfile.

Please help met het bovenstaande probleem
  #2 (permalink)  
Old 03-17-2008
drl's Avatar
DRL drl is offline Forum Advisor  
Geregistreerde gebruiker
  
 

Join Date: Apr 2007
Plaats: Saint Paul, MN USA / BSD, CentOS, Debian, OS X, Solaris
Posts: 712
Hoi.

Hoe moet getopts weten dat de string "-f" is geen juiste waarde voor het argument van de optie "-p"? ... cheers, DRL

PS In getopts Ik gebruik het geval selecteurs niet moeten leiden "-" tekens.

PPS Merk ook op dat u hebt ingesteld "d:", maar heeft geen gebruik optarg in het geval selector voor "-d".

Laatst bewerkt door DRL; op 03.17.2008 12:36..
  #3 (permalink)  
Old 03-17-2008
tijdperk
Score
  
 

Berichten: n / a
Bits: 0 [Banking]
Als een opmerking over het ontwerp, misschien zij niet mogen worden "opties" als ze verplicht zijn.

Na de while-lus, controleer dan of wachtwoord of configuratiebestand unset is, en sterven wanneer het is?

Ik denk niet dat er een standaard manier om lange opties met getopts krijgen, je kunt je eigen rollen, though.

Code:
while :
do
  case $# in 0) break;; esac
  case $1 in 
    -h|-\?|--help) usage;;
    -d|--debug) DEBUG=true;export SCRIPT_LOG_LEVEL=DEBUG; shift ;;
    -t|--type) DEVTYPE="$2"; shift; shift ;;
    -s|--socks) SIG_IP="$2"; export SOCKS5_SERVER="$2:9001"; shift; shift ;;
    -l|--login) HOST_LOGIN="$2"; shift; shift;;
    -p|--password) PASSWORD="$2"; shift; shift ;;
    -f|--config-file) cl_cfile_specd=1
        export RUNNING_CONFIG_FILE="$2"; shift; shift ;;
    -*) logmsg "Unrecognized param usage";;
  esac
done
Making it sterven gracieus als een optie die een argument vereist ontvangt geen (dwz 2 dollar is niet vastgesteld op alle) wordt overgelaten als een oefening. Het probleem van te zien dat 2 dollar is de volgende optie is kunstmatige intelligentie (of je zou kunnen verzinnen een aparte regeling voor het opgeven van een argument dat begint met dashboard, zodat u optie argumenten kunnen verbieden om te beginnen met een streepje in het algemene geval. Ik denk weet niet of dat goed of slecht usability).
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 12:58.


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