The UNIX and Linux Forums  


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
kontrollera katalogen finns ust Shell-programmering och Skript 7 09-22-2008 09:49
Kontrollera om vissa filer i en katalog, för att inte lägga namn till en textfil SunnyK Shell-programmering och Skript 1 02-07-2008 09:21
hur man kan kontrollera om katalogen / filen finns med hjälp av c / c + + steven88 High Level Programming 2 01-03-2006 02:55
hur man kan kontrollera om katalogen / filen finns med hjälp av c / c + + steven88 Shell-programmering och Skript 1 01-02-2006 10:45
hur man kan kontrollera om filen finns eller inte? gusla UNIX for Dummies Frågor & Svar 3 03-27-2002 10:56

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 03-05-2008
weonpc weonpc is offline
Registered User
  
 

Join Date: mars 2008
Inlägg: 1
Så kontrollerar du katalogen finns på servrar

Det finns många servrar och deras katalog structer bör vara exakt samma. Kontrollera sökvägen för alla servrar, jag skrev ett manus.


Kod:
#! /bin/ksh

ARRAY_DIRECTORIES[1]="/c/dev/custom/bin"
ARRAY_DIRECTORIES[2]="/c/dev/db/custom/src"

ARRAY_ENV[1]="remoteName200" 
ARRAY_ENV[2]="remoteName201"
ARRAY_ENV[3]="remoteName202"

integer DIR_INDEX=0
integer ENV_INDEX=0

while(($ENV_INDEX<3))
do
	ENV_INDE=`expr $ENV_INDE+1`
	
	ssh "${ARRAY_ENV[$ENV_INDE]}"

	while (($DIR_INDEX<2))
	do
		DIR_INDEX=`expr $DIR_INDEX + 1`
	
		if [ ! -d "${ARRAY_DIRECTORIES[$DIR_INDEX]}" ]
		then
			#do something
		fi
	done
done

Jag är ny för Shell Scripting, kanske jag gör något riktigt dumt och behöver din hjälp.

Skriptet gör ssh till servern utan att be om lösenord (jag ställde en ssh-nyckel till. Ssh katalogen.)

Tack
Mike
  #2 (permalänk)  
Old 03-05-2008
Smiling Dragon's Avatar
Smiling Dragon Smiling Dragon is offline Forum Advisor  
Oorganiserad User
  
 

Join Date: Nov 2007
Plats: Nya Zeeland
Inlägg: 922
expr kräver utrymme runt (t.ex. "expr $ ENV_INDE + 1" inte "expr $ ENV_INDE 1)
Du hänvisar till ENV_INDE och ENV_INDEX synes omväxlande - det ser ut som ett stavfel eller tre finns
ksh krävs inte för detta - du begränsar dig själv utan att bara använda sh
  #3 (permalänk)  
Old 03-06-2008
Bakunin bakunin is offline Forum Staff  
Bughunter extraordinär
  
 

Join Date: maj 2005
Ort: I det vänstra byte av / dev / kmem
Inlägg: 1637
Om du vill gå till ksh (Jag rekommenderar att, ledsen, Smiling Dragon), du behöver inte "` expr ....`"- konstruktioner. Vidare kan du avsluta ditt loopar bygger på att du vet hur många array poster finns (3 i ert fall). Du skulle kunna göra att dynamiskt så att du inte skulle behöva ändra koden det om du lägger till fler poster på din kedjor.

Observera att "$ (# arr [*]}" ger dig flera delar i kedjan" arr [] ". Inuti dubbel parentes kan du göra heltal matematik: "((var3 \u003d var1 + var2))". Du måste omge parentes med utrymmen, dock. "((var1. .." är fel "((var1. .." är ok.


Kod:
typeset    arr[1]="first"
typeset   arr[2]="second"
typeset   arr[3]="third"
typeset   arr[4]="fourth"
typeset -i index=1

(( index = 1 ))
while [ $index -le ${#arr[*]} ] ; do
     print - "element to work on: ${arr[$index]}"
     (( index =+ 1 ))
done

Jag hoppas att detta hjälper.

Bakunin
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 12:49.


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