LinuxQuestions.org
Download your favorite Linux distribution at LQ ISO.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 04-04-2012, 01:11 PM   #1
shivaprasath143
LQ Newbie
 
Registered: Apr 2012
Posts: 2

Rep: Reputation: Disabled
Shell Script Help


Hi Guys,

Can someone help me on ftping files via shell script please ?

i have created a script but its getting st-rucked after connecting to
the ftp location (i can see that logs).

Please see below i have pasted script and log.

#SCRIPT#
.env

set -a

##################
#Local Variables
##################

LOGDIR=/logs
LOGFILE=ftp.log
PICKUPDIR=/alpha/beta/
DROPDIR=/home/shiva/
DATE=`date +%Y-%m-%d`
GATEWAY=12.25.30.25
USERID=shivaprasath
PASSWD=cmm1234

###########
#FUNCTIONS#
###########

#function to pull Files

ftp_copy ()
{
ftp -in $GATEWAY
user ${USERID} ${PASSWD}
cd ${PICKUPDIR}
lcd ${DROPDIR}
mget MP3_${DATE}*
bye
!
} >> $LOGDIR/$LOGFILE

#############
#Main Script#
#############

echo "Starting Files ftp: \c" >> $LOGDIR/$LOGFILE
date >> $LOGDIR/$LOGFILE
ftp_copy
echo "Ending Files ftp: \c" >> $LOGDIR/$LOGFILE

wait

date >> $LOGDIR/$LOGFILE
exit 0

#End of Script#




# ftp.log#

Starting Files ftp: Wednesday, 4 April 2012 16:21:43 BST
Connected to 12.25.30.25.
Welcome to the FTP Site
Remote system type is Windows_NT.
ftp>
ftp>


Regards,
Shiva
 
Old 04-05-2012, 07:14 AM   #2
jf.argentino
Member
 
Registered: Apr 2008
Location: Toulon (France)
Distribution: FEDORA CORE
Posts: 493

Rep: Reputation: 50
When you need to "discuss" through network with shell, you have to use netcat. But, just for ftp transfers, I think you could use "ftpput" and "ftpget"
 
Old 04-05-2012, 08:47 AM   #3
lithos
Senior Member
 
Registered: Jan 2010
Location: SI : 45.9531, 15.4894
Distribution: CentOS, OpenNA/Trustix, testing desktop openSuse 12.1 /Cinnamon/KDE4.8
Posts: 1,144

Rep: Reputation: 217Reputation: 217Reputation: 217
Hi,

probably your FTP function is not getting what it's supposed to:
Code:
#!/bin/sh
HOST='ftp.users.qwest.net'
USER='yourid'
PASSWD='yourpw'
FILE='file.txt'

ftp -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PASSWD
put $FILE
quit
END_SCRIPT
exit 0
This is an example of working one from here.


Just for an option, if you could use LFTP instead of Ftp, that would solve you much trouble with FTP scripting.

good luck

Last edited by lithos; 04-05-2012 at 08:49 AM.
 
Old 04-05-2012, 03:41 PM   #4
David the H.
Bash Guru
 
Registered: Jun 2004
Location: Osaka, Japan
Distribution: Debian sid + kde 3.5 & 4.4
Posts: 6,823

Rep: Reputation: 1957Reputation: 1957Reputation: 1957Reputation: 1957Reputation: 1957Reputation: 1957Reputation: 1957Reputation: 1957Reputation: 1957Reputation: 1957Reputation: 1957
please use [code][/code] tags around your code and data, to preserve formatting and to improve readability. Please do not use quote tags, colors, or other fancy formatting.


QUOTE ALL OF YOUR VARIABLE SUBSTITUTIONS. You should never leave the quotes off a parameter expansion unless you explicitly want the resulting string to be word-split by the shell (globbing patterns are also expanded). This is a vitally important concept in scripting, so train yourself to do it correctly now. You can learn about the exceptions later.

http://mywiki.wooledge.org/Arguments
http://mywiki.wooledge.org/WordSplitting
http://mywiki.wooledge.org/Quotes


Environment variables are generally all upper-case. So while not absolutely necessary, it's good practice to keep your own user variables in lower-case or mixed-case, to help differentiate them.


$(..) is highly recommended over `..`

Last edited by David the H.; 04-05-2012 at 03:43 PM. Reason: darned doubled post again!
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
How to pass command line arguments from one shell script to another shell script VijayaRaghavanLakshman Linux - Newbie 5 01-20-2012 10:12 PM
Shell Script running in another shell script and then exit dreamervlk Linux - General 3 09-16-2011 07:40 AM
Executing a Shell script with 654 permissions inside another shell script. changusee2k Linux - Newbie 2 06-07-2011 08:58 PM
shell script problem, want to use shell script auto update IP~! singying304 Programming 4 11-29-2005 06:32 PM


All times are GMT -5. The time now is 02:13 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration