Sponsored Content
Full Discussion: Need a Shell Script for FTP
Top Forums Shell Programming and Scripting Need a Shell Script for FTP Post 302926617 by maruf on Tuesday 25th of November 2014 01:13:25 PM
Old 11-25-2014
Need a Shell Script for FTP

Code:
NOW=$(date +"%m%d%Y")
  FILE="XXXXX.TXT"
#I add below for changing the file name with below format
  filename=YYYYL.$(date --date="-1 day" +"%Y%m%d").001
exec > $NOW.log
exec 2>&1

if ! mkdir /tmp/$$
then
        echo "Couldn't create /tmp/$$" >&2
        exit 1
fi

echo "Storing into /tmp/$$" >&2

SrcDir="FTP"
DstDi='/tmp/'

trap "rm -Rf /tmp/$$" EXIT # Clean up temp folder when the script quits by any means

# Check if you can connect.
ftp -nvd $HOST 2>&1 <<EOF | tee $NOW
quote user $ftpuser
quote pass $ftppass
hash
prompt off
ls
EOF

if [ "$?" -ne 0 ]
then
        echo "Couldn't connect" >&2
        exit 1
fi

# Get the remote file
ftp -nvd $HOST <<EOF
quote USER $ftpuser 
quote PASS $ftppass
hash
prompt off
lcd /tmp/$$
bin
get $FILE
bye
EOF

if [ "$?" -ne 0 ] || [ ! -f /tmp/$$/$FILE ]
then
        echo "Couldn't retrieve $FILE" >&2
        exit 1
fi

FTPSIZE=$(awk '$NF==FILE { print $(NF-1) }' FILE="$FILE" "$NOW")
LOCALSIZE=$(wc -c < /tmp/$$/$FILE)

if [ "$FTPSIZE" -ne "$LOCALSIZE" ]
then
        echo "File differs from remote size" >&2
        exit 1
fi

#I add below for copy file from tmp and save the file as specific name 
cp -p /tmp/$$/$FILE /tmp/$filename

# File has successfully transferred, move it from /tmp/$$ into /tmp
mv /tmp/$$/$FILE /tmp
echo "SUCCESSFULLY RETRIEVED $FILE & RENAME AS $filename" >&2


Last edited by maruf; 11-25-2014 at 02:20 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

using ftp in a shell script.

I am trying to ftp some files from a certain directory, but i got an invalid command. does anybody know why i got this error? ftp -v -i -n <<SCRIPT open servername user username password cd /server/logs for file in MCWAS* do put ${file} /home/test/${file} done bye SCRIPT (2 Replies)
Discussion started by: caesarkim
2 Replies

2. Shell Programming and Scripting

ftp in shell script

Hi, I have to ftp to a remote machine. i have got the Ip, username and password and the file path.. I need to get the file name with out user intervention in my script.. is there any way to do this.. please help esham (2 Replies)
Discussion started by: esham
2 Replies

3. UNIX for Dummies Questions & Answers

Shell script for ftp

Hi ,, I am wrting a shell script to ftp a file from remote server but its giving some problem to me.can you help me in debugging this. #!/usr/bin/ksh HOST="some ip" user="user_name" passwd="password" ftp -n $HOST >>END_SCRIPT USER $user $passwd binary prompt get... (3 Replies)
Discussion started by: namishtiwari
3 Replies

4. Shell Programming and Scripting

FTP via shell script

Hi, I need to upload a file via ftp. I have given : ftp -n $HOST <<END quote user $USER quote pass $PASSWD prompt off put bus.txt quit END Its throwing a syntax error at "<<" symbol. What should be done for this ?? (2 Replies)
Discussion started by: risshanth
2 Replies

5. Shell Programming and Scripting

ftp with shell script

Can I ftp to put file with shell script(as bath file) ? Plz give the simple code to do that. My script look like that #!/bin/sh echo "Start ftp" ftp temphost <<EOF put file quit EOF # end This code ignore username & password but I need to input. How to input username &... (8 Replies)
Discussion started by: aungomarin
8 Replies

6. UNIX for Advanced & Expert Users

FTP in shell script

HI ALL i am writing a shell script in which i have to use FTP command like. FTP <ip address> cd xyz mget* bye but i am not able to perform any command from shell script. once the control goes to FTP, i again have to type all the things. i just want my shell script to take care of the... (8 Replies)
Discussion started by: infyanurag
8 Replies

7. Shell Programming and Scripting

Help with Shell script for FTP

#!/usr/bin/ksh export filename=/grid/PowerCenter/inbound/AT/filelist.txt export SOURCE_DIR=/grid/PowerCenter/inbound/AT export ICOMS_FTP_TGT_DIR1=/dw/input/ATU/ICOM_SERV1 export ICOMS_FTP_TGT_DIR2=/dw/input/AT/ICOM_SERV2 export FILE_MASK="ATRPU_RP_ATU" echo "start" ftp_data_file() { ... (15 Replies)
Discussion started by: vsmeruga
15 Replies

8. Shell Programming and Scripting

FTP within a SHELL script

I am running the following on linux (on a mac): filename="/Users/thisfilename.txt" hostname="ftp.mysite.com" username="myusername" password="mypassword" echo '=======FTP========' ftp -un $hostname <<EOF quote USER $username quote PASS $password binary put $filename quit EOF I... (4 Replies)
Discussion started by: globalnerds
4 Replies

9. Shell Programming and Scripting

Help With FTP Shell Script

So i Administer multiple ftp servers that run on dynamic IP's as well as user and password settings are changed by other people constantly. What i need to do is ensure that an FTP is server is up on the IP i check. As well as the login credentials work. Here is a simple script i wrote. However... (2 Replies)
Discussion started by: Noledge
2 Replies

10. UNIX for Dummies Questions & Answers

FTP in Shell Script

Dear All, I am using FTP in a script. But when i exit from the FTP session, the commands written after EOF don't get executed. i.e. ftp <<EOF quote $login quote $password cd /tmp mget *somefile* bye EOF echo $some_variable #This last echo command or whatever piece of commands i... (10 Replies)
Discussion started by: Salman786
10 Replies
ATF-SH(1)						    BSD General Commands Manual 						 ATF-SH(1)

NAME
atf-sh [-s shell] -- interpreter for shell-based test programs SYNOPSIS
atf-sh script DESCRIPTION
atf-sh is an interpreter that runs the test program given in script after loading the atf-sh(3) library. atf-sh is not a real interpreter though: it is just a wrapper around the system-wide shell defined by ATF_SHELL. atf-sh executes the inter- preter, loads the atf-sh(3) library and then runs the script. You must consider atf-sh to be a POSIX shell by default and thus should not use any non-standard extensions. The following options are available: -s shell Specifies the shell to use instead of the value provided by ATF_SHELL. ENVIRONMENT
ATF_LIBEXECDIR Overrides the builtin directory where atf-sh is located. Should not be overridden other than for testing purposes. ATF_PKGDATADIR Overrides the builtin directory where libatf-sh.subr is located. Should not be overridden other than for testing purposes. ATF_SHELL Path to the system shell to be used in the generated scripts. Scripts must not rely on this variable being set to select a specific interpreter. EXAMPLES
Scripts using atf-sh(3) should start with: #! /usr/bin/env atf-sh Alternatively, if you want to explicitly choose a shell interpreter, you cannot rely on env(1) to find atf-sh. Instead, you have to hardcode the path to atf-sh in the script and then use the -s option afterwards as a single parameter: #! /path/to/bin/atf-sh -s/bin/bash ENVIRONMENT
ATF_SHELL Path to the system shell to be used in the generated scripts. SEE ALSO
atf-sh(3) BSD
September 27, 2014 BSD
All times are GMT -4. The time now is 05:08 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy