Hallo,
ich habe zwei Skripte. Das erste macht eine SQL-Datenbankabfrage und erzeugt eine Spooltdatei mit der Ausgabe der Abfrage.
Das zweite Skript beaarbeitet die Spolldatei.
Meine Frage kann ich die zwei Skripte in eins zusammen … knoten??
Skript 1:
#!/bin/csh
#-xd
#
#
#
#
set var2 = /archiv
#
set Skript = Befehlskette.sql
set SQL = `which sqlplus`
set DBUSER = "xxx"
set DBPWD = "xxx"
set Verz = /export/home/Skript/
set spdat = spooldatei
#
echo "REM" \>$Skript
echo "set heading off;" \>\>$Skript
echo "set pagesize 1024;" \>\>$Skript
echo "set feedback off;" \>\>$Skript
echo "set echo off;" \>\>$Skript
echo "spool $Verz$spdat;" \>\>$Skript
echo "SELECT 'ls;$var2;' || substr(table.adr,1,3) || ';' || substr(table.adr,4,3)" \>\>$Skript
echo " || ';' || substr(table.adr,7,3)|| ';' || to\_number(substr(table.adr,10,3))" \>\>$Skript
echo " || ';' || table.pages" \>\>$Skript
echo "FROM mdt1 , table , cas\_table " \>\>$Skript
echo "WHERE mdt1.metadocid = table.id" \>\>$Skript
echo "AND mdt1.version = table.version" \>\>$Skript
echo "AND table.cas\_id\_ref = 'PROJEKT'" \>\>$Skript
echo " GROUP BY table.adr,table.id," \>\>$Skript
echo " table.pages,table.cas\_id\_ref" \>\>$Skript
echo " ORDER BY table.adr;" \>\>$Skript
echo "exit;" \>\>$Skript
echo "spool off;"
#chmod 777 $spdat.lst
#cd $Verz
#csh $spdat.lst
#
#
$SQL $DBUSER/$DBPWD @$Skript
Erzeugt dieses File(Spooldatei):
ls;/archiv;000;000;000;17;3
ls;/archiv;000;000;000;20;2
ls;/archiv;000;000;000;22;1
Skript 2:
#!/bin/nawk -f
#set erg
BEGIN{
FS=";";
}
{
if ($7\>"1")
{
{
for (i = 1; i
die Ausgabe dieses Skriptes sieht dann so aus:
ls /archiv/000/000/000/17
ls /archiv/000/000/000/18
ls /archiv/000/000/000/19
ls /archiv/000/000/000/20
ls /archiv/000/000/000/21
ls /archiv/000/000/000/22