Sponsored Content
Full Discussion: Need a Shell Script for FTP
Top Forums Shell Programming and Scripting Need a Shell Script for FTP Post 302925798 by maruf on Wednesday 19th of November 2014 11:15:03 AM
Old 11-19-2014
Need a Shell Script for FTP

I ran below

Code:
  HOST=''
  ftpuser=''
  ftppass=''
  FILE='XXXX.YYMMDD'
  NOW=$(date +"%m-%d-%Y")
if ! mkdir /tmp/$$
then
        echo "Couldn't create /tmp/$$" >&2
        exit 1
fi

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

SrcDir='G:\KKKK'
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 <<EOF
quote user $ftpuser
quote pass $ftppass
hash
prompt off
cd $SrcDir
ls
EOF

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

# Get the remote file
ftp -nvd $HOST << EOF >/tmp/ftp.$NOW.log
quote USER $ftpuser 
quote PASS $ftppass
hash
prompt off
cd $SrcDir
lcd /tmp/$$
bin
mget $FILE
bye
EOF

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

OLDIFS="$IFS" # Special IFS variable controls splitting of unquoted variables
IFS="/"

for FILE in /tmp/$$/*
do
        if [ ! -f "$FILE" ]
        then
                echo "No files retrieved" >&2
                exit 1
        fi

        set -- $FILE        # Splits /path/to/file into $1="", $2="path", $3="to", $4="file"
        shift $(( $# - 1 )) # $1="file", all the rest disappears

        if [ "$(wc -c < "${DstDi}/$1")" -ne "$(wc -c < "/tmp/$$/$1")" ]
        then
                echo "Sizes of original and new file differ" >&2
                exit
        fi
done

IFS="$OLDIFS"

.................................................
after run


Code:
./ftp1.sh: line 44: warning: here-document at line  delimited by end-of-file (wanted `EOF')
./ftp1.sh: line 45: syntax error: unexpected end of file

 

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
GIT-MERGE-FILE(1)						    Git Manual							 GIT-MERGE-FILE(1)

NAME
git-merge-file - Run a three-way file merge SYNOPSIS
git merge-file [-L <current-name> [-L <base-name> [-L <other-name>]]] [--ours|--theirs|--union] [-p|--stdout] [-q|--quiet] [--marker-size=<n>] <current-file> <base-file> <other-file> DESCRIPTION
git merge-file incorporates all changes that lead from the <base-file> to <other-file> into <current-file>. The result ordinarily goes into <current-file>. git merge-file is useful for combining separate changes to an original. Suppose <base-file> is the original, and both <current-file> and <other-file> are modifications of <base-file>, then git merge-file combines both changes. A conflict occurs if both <current-file> and <other-file> have changes in a common segment of lines. If a conflict is found, git merge-file normally outputs a warning and brackets the conflict with lines containing <<<<<<< and >>>>>>> markers. A typical conflict will look like this: <<<<<<< A lines in file A ======= lines in file B >>>>>>> B If there are conflicts, the user should edit the result and delete one of the alternatives. When --ours, --theirs, or --union option is in effect, however, these conflicts are resolved favouring lines from <current-file>, lines from <other-file>, or lines from both respectively. The length of the conflict markers can be given with the --marker-size option. The exit value of this program is negative on error, and the number of conflicts otherwise. If the merge was clean, the exit value is 0. git merge-file is designed to be a minimal clone of RCS merge; that is, it implements all of RCS merge's functionality which is needed by git(1). OPTIONS
-L <label> This option may be given up to three times, and specifies labels to be used in place of the corresponding file names in conflict reports. That is, git merge-file -L x -L y -L z a b c generates output that looks like it came from files x, y and z instead of from files a, b and c. -p Send results to standard output instead of overwriting <current-file>. -q Quiet; do not warn about conflicts. --ours, --theirs, --union Instead of leaving conflicts in the file, resolve conflicts favouring our (or their or both) side of the lines. EXAMPLES
git merge-file README.my README README.upstream combines the changes of README.my and README.upstream since README, tries to merge them and writes the result into README.my. git merge-file -L a -L b -L c tmp/a123 tmp/b234 tmp/c345 merges tmp/a123 and tmp/c345 with the base tmp/b234, but uses labels a and c instead of tmp/a123 and tmp/c345. GIT
Part of the git(1) suite Git 1.8.3.1 06/10/2014 GIT-MERGE-FILE(1)
All times are GMT -4. The time now is 02:20 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy