The UNIX and Linux Forums  

Go Back   A UNIX és Linux Forums > Top Fórumok > Shell programozás és Scripting
.
google unix.com



Shell programozás és Scripting Post kérdések KSH, CSH, SH, Bash, Perl, PHP, SED, AWK ÉS EGYÉB shell szkriptek és shell script nyelvek itt.

Több, UNIX és Linux fórum témák Ön által talált Hasznos
Szál Thread Starter Fórum Válaszok Utolsó hozzászólás
while ciklus belsejében, míg hurok panknil Shell programozás és Scripting 0 01-07-2008 12:49 PM
A loop xramm HP-UX 3 10-10-2007 03:20 PM
Míg Loop hemangjani Shell programozás és Scripting 2 11-02-2006 11:01 AM
A loop munnabhai1 Shell programozás és Scripting 3 04-06-2006 03:30 PM
hogyan juthatunk el a hasonló funkciót míg loop vagy hurok trynew Shell programozás és Scripting 3 06-17-2002 12:09 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 Téma eszközök Keresés a téma Rate Thread Megjelenítési módok
  #1 (permalink)  
Old 03-17-2008
rsullivan rsullivan is offline
Regisztrált felhasználó
  
 

Join Date: Mar 2008
Hozzászólások: 1
sh hurok Segítsek

Szia,

Én a következő szkriptet, hogy ez a tartalék cpio keresztül egy NFS csatlakoztatni. A probléma az, hogy csak úgy tűnik, hogy kezd root. Nem tudom, mit csinálok rosszul, de itt nem működik. Miután a teljes forgatókönyvet. Már a kiemelt területeken, ahol azt hiszem, van egy probléma, vagy legalábbis lényeges, azt hiszem.

#! / bin / sh
#
# Set változók
#
NFSMOUNT \u003d "/ mnt /nfs"
BACKUP_LOG \u003d '/ usr / local / backup_logs "
EXCLUDE_FS \u003d "/ mnt /nfs"
HARDWARE_LOG \u003d '/ var / adm / messages "

export NFSMOUNT BACKUP_LOG EXCLUDE_FS HARDWARE_LOG

# Get dátum formátum MMDDYY
MDY \u003d `date +% m% d% Y"

if [! -d $ (BACKUP_LOG)-o! -w $ (BACKUP_LOG)], majd
echo "$ () BACKUP_LOG nem létezik, vagy nem írható"
exit 1
fi

echo "# # # Backup kezdve" date ""
# LOG_START a sorok száma a mi hardver napló
# Kezdődött, amikor a biztonsági mentést. Mi nem érintett semmit
# Bekövetkezett eddig.
LOG_START \u003d `wc-l <$ (HARDWARE_LOG)"
# Strip vezető és szóközök

LOG_START \u003d `expr $ (LOG_START)"

BACKUPTYPE \u003d "cpio"

# Get listáját Unix fájlrendszerek biztonsági mentése
MOUNTEDSYSTEMS \u003d `df-F UFS | cut-d ''-f1 | sort"

# Eltávolítás kizárt fájlrendszert a listáról
az FS a $ MOUNTEDSYSTEMS
tesz
case "$ (EXCLUDE_FS)" a
# Ha a kizárni semmit nem
* "$ (FS) "*);;
# Új bejegyzés a listához
*) Case "$ (fájlrendszereket)" a
# Lista üres, így ez az első bejegyzés
'') Fájlrendszereket \u003d "$ (FS)";
# Lista bejegyzések így append a listához
*) Fájlrendszereket \u003d "$ (fájlrendszereket) $ (FS)";
esac;
esac
kész

cd /
if [ "$ BACKUPTYPE" \u003d "dump"], majd
# Backup segítségével dump
az FS a fájlrendszer $ ()
tesz
echo "Dömping $ (FS) $ (NFSMOUNT)" | \
tee-a $ (BACKUP_LOG) / bu.ufsdump. $ (MDY)
/ usr / sbin / ufsdump 0fu $ (NFSMOUNT) $ (FS) 2> & 1 | \
# Most csak a az utolsó két sor a kimeneti
# eldönteni, hogy ez egy sikeres dump
tee-a $ (BACKUP_LOG) / bu.ufsdump. $ (MDY) | farok -3

# Count dump a fájlrendszerben
FS_COUNT \u003d `expr $ (FS_COUNT) + 1"
kész
vagy

# Backup segítségével cpio
az FS a fájlrendszer $ ()
tesz
echo "írása cpio archívum $ (FS) és $ (NFSMOUNT)" | \
tee-a $ (BACKUP_LOG) / bu.cpio. $ (MDY). err \
>> $ (BACKUP_LOG) / bu.cpio. $ (MDY)

# A kimenő találni mindig relatív gyökerestülkitép
megtalálni. $ (FS)-print-xdev | \

# Use sed megváltoztatni. "/" vissza "/" Solaris cpio így nem fog ugatni
sed -e 's / ^ \. \ / $ / \ / /' | \
cpio-oc-O $ () NFSMOUNT / `hostname`. MDY $ () \
2>> $ (BACKUP_LOG) / bu.cpio. $ (MDY). Err \
1>> $ (BACKUP_LOG) / bu.cpio. $ (MDY)

# Gróf cpio archívum fájlrendszer
FS_COUNT \u003d `expr $ (FS_COUNT) + 1"
kész

cat $ (BACKUP_LOG) / bu.cpio. $ (MDY). err
fi

# Kijelzõ fájlrendszer információkat, amelyek csak alátámasztani
echo "# # # Jelenleg szerelt fájlrendszereket:
df-k $ (fájlrendszereket)
echo "###"

LOG_END \u003d `wc-l <$ (HARDWARE_LOG)"
# Szalag vezető és szóközök
LOG_END \u003d `expr $ (LOG_END)"
if [ "$ (LOG_BEGIN)"-ne "$ (LOG_END)"]; majd
# Jelentés hibák log mentés közben
# Grep további tételek eltávolítását normál üzenet jelenik meg a
# Naplózási rendszer script
echo "# # # System naplófájlokhoz során backup"
cat $ (HARDWARE_LOG) | \
sed -e "1, $ (LOG_START) d" | \
grep-v "Kapcsolódás a" | \
grep v "visszautasította a kapcsolatot" | \
nawk '(print substr ($ 0,1,78)), \
Length> 78 (print "substr ($ 0,79)) '

echo "###"
fi
# Távolítsuk el a régi naplófájlok
if [ "$ (BACKUPTYPE)" \u003d "cpio"], majd
cd $ (BACKUP_LOG)
megtalál. 14-mtime követését exec rm () \;
ls-lt $ (BACKUP_LOG) / *
echo
fi

echo "Backup Finished at" "date"
  #2 (permalink)  
Old 03-18-2008
era
Vendég
  
 

Posts: n / a
Bit: 0 [Banking]
Milyen symtoms? Ez egy kicsit nehéz kitalálni, hova baj csak néztem a kódot.

Észrevettem egy kis probléma, itt van:


Kód:
case " ${EXCLUDE_FS} " in
# If its excluded do nothing
*" ${FS} "*);;

Ön igénylő EXCLUDE_FS a terek mindkét oldalon ahhoz, hogy ez a meccs, de nem úgy tűnik, hogy ezeket a tereket ki volt akkor EXCLUDE_FS sorolására. Vagy bővíteni "ügy" kódot kell kezelni mérkőzés elején, végén, és egyedül, vagy adjunk e terekben a feladatot. (Ez utóbbi könnyebb, de nagyobb a valószínűsége, hogy észrevétlen maradt valaki, aki gyorsan frissíti a listát kizárják később.)

Az esetben, ha Ön frissítése fájlrendszereket tűnik szükségtelenül bonyolultak. Egy szóközzel elején a listán, ha ez úgy tűnik, üres ártalmatlanok, ítélve, amit csinálsz vele később a kódot.

Én, én viszont EXCLUDE_FS egy reguláris kifejezés, és szűrjük le a kimenő df a egrep és megszabadulni, hogy az egész blob a kódot, egyébként.

Mi a lényeg az exportáló minden változó? Te nem subcommands hivatkozva, amelyek kellenek, ugye?

Úgy látom, hogy hiányzik a kötőjel elé, itt a lehetőség:


Kód:
grep v "refused connection from " | \

Nem látom, mi a baj a CPIO részt, sajnálom.

Megfelelő behúzásának talán segít egy kicsit itt is ...
Closed Thread

Könyvjelzõk

Téma eszközök Keresés a téma
Keresés a téma:

Részletes keresés
Megjelenítési módok Rate this thread
Rate this thread:

Posting szabályzat
Ön nem post new threads
Ön nem post válaszok
Ön nem post Csatolmányok
Ön nem szerkeszteni az üzeneteidet

BB kód van Be
Smilies vannak Be
[IMG] kód Be
HTML kód Ki
Trackbacks vannak Be
Pingbacks vannak Be
Refbacks vannak Be




Minden idő GMT -4. Az idő most 09:21 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Nyelvre lefordítva Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
A UNIX és Linux Fórum Tartalom Copyright © 1993-2009. Minden jog Reserved.Ad menedzsment RedTyger

Content Relevant URLs by vBSEO 3.2.0