2013-10-01 6 views
0

Я выполнениекак избежать .sql файла из папки

#!/bin/bash 

PARTITION_LOG=../log/auto_partition.log 

PATH=../sql/ 

cd $PATH 
SQL_FILES=`/bin/ls *.sql` 
echo "$SQL_FILES" 

for File in $SQL_FILES 
do 
    if [ -f $File ] 

    then 

    f=$File 

    fi 

$ORACLE_HOME/bin/sqlplus -silent username/[email protected] <<_EOF_> $PARTITION_LOG 
    set head on echo off linesize 300 feedback off trim on trimspool on verify off 
    spool $PARTITION_LOG 
    @$f 
    spool off 
_EOF_ 

done 

../sql/ содержит 4 файла

A.sql,B.sql,C.sql,D.sql 

Я не хочу, чтобы выполнить D.sql.

приведенный выше код выполняет все $ файлы.

ответ

0

Изменение линии

SQL_FILES=`/bin/ls *.sql` 

в

SQL_FILES=`/bin/ls [^D]*.sql` 

следует исключить D.sql.