The UNIX and Linux Forums  
Hej och välkommen från USA till UNIX och Linux Forum! Tack för ditt besök och gå med i vår globala gemenskapen.

Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
Definiera EDITOR Variabel - Tru64 Bagel08 UNIX for Dummies Frågor & Svar 2 12-15-2008 12:05
definiera en skrivare i qconfig matheeq AIX 0 03-18-2008 11:55
Definiera variabler sailorliones UNIX for Dummies Frågor & Svar 4 07-21-2006 03:09
definiera en variabel som ett nummer eller karaktär? noobian UNIX for Dummies Frågor & Svar 1 04-26-2005 08:19
Definiera variabler vid uppstart ianf UNIX for Dummies Frågor & Svar 7 01-07-2002 01:03

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 denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 01-03-2009
em23's Avatar
em23 em23 is offline
Registered User
  
 

Join Date: maj 2008
Ort: Chicago
Inlägg: 31
definiera variabler

Hej alla, Jag undrar om någon skulle ta en titt på detta script som jag arbetar på. Jag vet inte om jag har syntaxen rätt för min variabler och om den för loop är skrivet på rätt sätt.

sådant stöd skulle vara mycket uppskattat.

#! / usr / bin / bash

###########################################
# Skrivet av: em
# Syfte: Detta skript skrevs för att göra ändringar i en grundläggande zon setup
# Datum: 01 juli 2008
###########################################

# Min Variabler
DMI_FILE \u003d "/ etc / DMI / conf"
SNMP_FILE \u003d "/ etc / SNMP / conf"

##########
# Kod
##########

om [[-e $ DMI_FILE]]; sedan # kontrollera om filen finns
för conf i $ ($ DMI_FILE)
göra
mv conf conf.orig
gjord
annan
print "$ DMI_FILE finns inte"
exit
fi

echo "/ etc / DMI / conf har flyttats"

om [[-e $ SNMP_FILE]]; sedan # kontrollera om filen finns
för conf i $ ($ SNMP_FILE)
göra
mv conf conf.orig
gjord
annan
print "$ SNMP_FILE finns inte"
exit
fi

echo "/ etc / SNMP / conf har flyttats"


#
# Inaktivera tjänster
#
/ usr / sbin / svcadm inaktivera svc: / network / finger: default
/ usr / sbin / svcadm inaktivera svc: / nätverk / login: rlogin
/ usr / sbin / svcadm inaktivera svc: / nätverk / Shell: default
/ usr / sbin / svcadm inaktivera svc: / network / telnet: default
/ usr / sbin / svcadm inaktivera svc: / network / RPC / rstat: default
/ usr / sbin / svcadm inaktivera svc: / network / RPC / rusers: default
/ usr / sbin / svcadm inaktivera svc: / network / SMTP: sendmail
/ usr / sbin / svcadm inaktivera svc: / network / ftp: default
/ usr / sbin / svcadm inaktivera svc: / system / filesystem / autofs: default

echo "Den begärda tjänster har inaktiverats"

#
# Inaktivera automounter
#
/ usr / bin / svcadm inaktivera autofs

echo "automounter funktionshindrade"

#
# Redigera auto_master
#
VI / etc / auto_master

echo "Basic Zone installationen är klar"
  #2 (permalänk)  
Old 01-03-2009
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmerare, författare
  
 

Join Date: mars 2007
Ort: Toronto, Kanada
Inlägg: 2361
Citat:
Ursprungligen postat av em23 View Post
Hej alla, Jag undrar om någon skulle ta en titt på detta script som jag arbetar på. Jag vet inte om jag har syntaxen rätt för min variabler och om den för loop är skrivet på rätt sätt.

Visste du köra skriptet? Om du visste du skulle ha fått felmeddelanden som talar om vad och var det fel.
Citat:
sådant stöd skulle vara mycket uppskattat.

När meddelanden kod kan du lägga den i [code]-taggar.
Citat:
Kod:
if [[ -e $DMI_FILE ]]; then #check to see if the file exists

[[-E ... ]] inte är standard, och i detta fall erbjuder ingenting över standard [-E ... ].
Citat:
Kod:
    for conf in $($DMI_FILE)

Det finns ett uppenbart misstag. Varför använder du kommandot substitution när variabeln inte innehåller ett kommando?
  #3 (permalänk)  
Old 01-03-2009
em23's Avatar
em23 em23 is offline
Registered User
  
 

Join Date: maj 2008
Ort: Chicago
Inlägg: 31
Citat:
Ursprungligen postat av cfajohnson View Post

Visste du köra skriptet? Om du visste du skulle ha fått felmeddelanden som talar om vad och var det fel.
Det gjorde jag, men inte får något fel.

När meddelanden kod kan du lägga den i [code]-taggar.
d'oh! glömde det.

[[-E ... ]] inte är standard, och i detta fall erbjuder ingenting över standard [-E ... ].
okej, var inte medveten om det. tack.

Det finns ett uppenbart misstag. Varför använder du kommandot substitution när variabeln inte innehåller ett kommando?
stavfel, jag glömde "ls" i det.
  #4 (permalänk)  
Old 01-03-2009
em23's Avatar
em23 em23 is offline
Registered User
  
 

Join Date: maj 2008
Ort: Chicago
Inlägg: 31
här är de förändringar som jag gjorde.


Kod:
#!/usr/bin/ksh

if [ -e /etc/dmi/conf/ ]; then #check to see if /etc/dmi/conf exists
   mv conf conf.orig # move the file to .orig
else
   print "/etc/dmi/conf does not exist"
fi

if [ -e /etc/snmp/conf/ ]; then # check to see if /etc/snmp/conf exists
   mv conf conf.orig # move the conf to .orig
else
   print "/etc/snmp/conf does not exist"
fi
  #5 (permalänk)  
Old 01-03-2009
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmerare, författare
  
 

Join Date: mars 2007
Ort: Toronto, Kanada
Inlägg: 2361
Citat:
Ursprungligen postat av em23 View Post
här är de förändringar som jag gjorde.

Kod:
#!/usr/bin/ksh

if [ -e /etc/dmi/conf/ ]; then #check to see if /etc/dmi/conf exists
   mv conf conf.orig # move the file to .orig

Vad försöker du flytta? Du har inte undersökt om det finns en fil (eller katalog) kallas conf i den aktuella katalogen.
Citat:
Kod:
else
   print "/etc/dmi/conf does not exist"

Hur vet du det / etc / DMI / conf inte finns? Du har inte testa för det, du testas för en katalog med det namnet.

Samma synpunkter gäller för nästa avsnitt också.
Citat:
Kod:
fi

if [ -e /etc/snmp/conf/ ]; then # check to see if /etc/snmp/conf exists
   mv conf conf.orig # move the conf to .orig
else
   print "/etc/snmp/conf does not exist"
fi
  #6 (permalänk)  
Old 01-03-2009
em23's Avatar
em23 em23 is offline
Registered User
  
 

Join Date: maj 2008
Ort: Chicago
Inlägg: 31
Citat:
Ursprungligen postat av cfajohnson View Post

Vad försöker du flytta? Du har inte undersökt om det finns en fil (eller katalog) kallas conf i den aktuella katalogen.

Hur vet du det / etc / DMI / conf inte finns? Du har inte testa för det, du testas för en katalog med det namnet.

Samma synpunkter gäller för nästa avsnitt också.
Menar du test, som så:

Kod:
test -d /etc/dmi/conf
if [ "$?" -eq 0 ]
then
   print '/etc/dmi/conf does exist'
else
   print '/etc/dmi/conf does NOT exist'
fi
och när genomförs ...
em23 @ Sparky: ~ $. / test.sh
/ etc / DMI / conf existerar
  #7 (permalänk)  
Old 01-03-2009
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmerare, författare
  
 

Join Date: mars 2007
Ort: Toronto, Kanada
Inlägg: 2361
Citat:
Ursprungligen postat av em23 View Post
Menar du test, som så:

test är en synomym för [.
Citat:
Kod:
test -d /etc/dmi/conf
if [ "$?" -eq 0 ]

Det är samma som

Kod:
test -d /etc/dmi/conf
if test "$?" -eq 0
Det skulle normalt vara skriven som:

Kod:
if test -d /etc/dmi/conf
Eller:

Kod:
if [ -d /etc/dmi/conf ]
Citat:
Kod:
then
   print '/etc/dmi/conf does exist'
else
   print '/etc/dmi/conf does NOT exist'
fi
och när genomförs ...
em23 @ Sparky: ~ $. / test.sh
/ etc / DMI / conf existerar
Closed Thread

Komihåglista

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 02:47.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0