Сценарии оболочки Solaris - PullRequest
       10

Сценарии оболочки Solaris

1 голос
/ 03 февраля 2012

Я пишу скрипт для ftp некоторых файлов, используя некоторые правила.Но у меня есть проблемы со сценариями создания сеанса ftp.

ниже приведен скрипт оболочки, который я сейчас использую.

#!/bin/bash
cd /var/ericsson/nin/charging/archive
date=`(/usr/bin/perl -e '($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time()-24*60*60);printf "%4d%02d%02d", $year+1900,$mon+1,$mday;')`
movedFile=`ls | grep $date`
HOST=xxxx
USER=xxxx
PASSWD=xxxxx
for i in $movedFile; 
do
    echo $date >> trial.txt
    echo "Uploading file $i" >> trial.txt
    ftp -n $HOST
    quote USER $USER
    quote PASS $PASSWD
    binary
    cd TEMP
    put $i
    quit
    END_SCRIPT
    echo "kk" 
done

проблема в том.Невозможно вызвать команды кавычек ftp.

Ответы [ 2 ]

3 голосов
/ 03 февраля 2012

Оформить bash Здесь документы .Синтаксис, который вы ищете:

  ftp -n $HOST <<END_SCRIPT
  quote USER $USER
  quote PASS $PASSWD
  binary
  cd TEMP
  put $i
  quit
END_SCRIPT
0 голосов
/ 25 сентября 2013

, так как его нельзя увидеть в комментариях. вот правильный ответ сработала моя ситуация

cd xxxx 
date=(/usr/bin/perl -e '($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time()-24*60*60‌​);printf "%4d%02d%02d", $year+1900,$mon+1,$mday;') 
movedFile=ls | grep $date 
HOST=xxxx 
USER=xxxx 
PASSWD=xxxx 
for i in $movedFile; 
do 
   echo $date >> xxxx.log 
   echo $i >> xxxx.log 
   ftp -n $HOST <<End-Of-Session user "$USER" "$PASSWD" 
   binary 
   cd TEMP 
   put $i 
   quit 
   End-Of-Session 
done
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...