11-27-2008
Passing variables: sftp using -b batchfile
Hi All,
I have created a script for an sftp transfer that works without a date variable being passed, I want it to work with a date variable being passed.
So, my initial script, mainsftp.sh, looks like this:
-----------------------------------------------------------------------
# Variables
#
ODAY=$1
LDIR1='/sftp/incoming'
USER1=username
MACHINE1=nnn.nnn.nnn.nnn
# Main
sftp -b ~/folder/sftpcmd.txt $USER1@$MACHINE1 <<EOF
-----------------------------------------------------------------------
File sftpcmd.txt looks like this:
----------------------------------------------------------------------
lcd /ftp/dir
get filename_*.csv
get filename_*.txt
bye
----------------------------------------------------------------------
Now - the above code works for me and will retrieve all files filename_*.csv and filename_*.txt however, for the purposes of my job, I want to change sftpcmd to look as follows, with $ODAY being passed as $1 to the main script:
----------------------------------------------------------------------
lcd /ftp/dir
get filename_$ODAY.csv
get filename_$ODAY.txt
bye
----------------------------------------------------------------------
My question is two-fold:
a) Is there a way to have the ftp commands in the batchfile above within mainsftp.sh? or if not
b) Is there a way to pass the $ODAY variable from mainsftp.sh to sftpcmd.txt
I'm working on an AIX server.
Thanks,
Julie
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hey all,
I am writing a script for sFTP using batchfile option (-B). My script is supposed to monitor a certain directory for several files and when they are found I will send them to a testing server. So using a static batchfile wouldn't be feasible, I am just wondering if anyone can show... (0 Replies)
Discussion started by: mpang_
0 Replies
2. Shell Programming and Scripting
Several of our end-users need to send a file to our insurance carrier using ssh and sftp. We've put together a Windows VBS script that opens the ssh tunnel and calls sftp with the -b option pointing to a batch script in the same directory, however sftp doesn't seems to be reading from the... (1 Reply)
Discussion started by: kmw
1 Replies
3. Shell Programming and Scripting
Hi,
I've got a C program that is using execlp to run a non-interactive sftp (using a batchfile) session to send some files to another system.
Just before doing that, I create the batchfile called sftp_batch on the fly:
V8_26_1:sun-->cat /workspace/sftp_batch
cd /tmp/newsftp
put test.file... (2 Replies)
Discussion started by: Fiaran
2 Replies
4. Solaris
Hi,
Anyone can help me on how to solve my problem not getting the actual $DATE saying . Here my scripts;
#!/bin/sh
DATE='20110331'
sftp -oUserKnownHostsFile=/.ssh/known_hosts -oIdentityFile=/.ssh/id_rsa -b /source/transfer.sh server1@sftp.com <<EOF
#tranfer.sh
put... (3 Replies)
Discussion started by: fspalero
3 Replies
5. UNIX and Linux Applications
Hi All,
I am trying to do SFTP without passing the password.
I did it by generating the Key pair on both source and destination servers but the problem is My script is running with BATCHADM user whereas I am doing SFTP using another username (sftp user1@destinationServer) due to which it is... (3 Replies)
Discussion started by: kaurr06
3 Replies
6. UNIX for Dummies Questions & Answers
Hi,
I am trying to connect through SFTP. Though the DSA 2048 public key is installed in the server machine, the connection is established only with password authentication! When i turn off password authentication in sshd_config file the connection is not working.
Please advise,
Best... (0 Replies)
Discussion started by: Maharajan
0 Replies
7. UNIX for Dummies Questions & Answers
Hi,
The script didn't continue as "20130109" folder is already created on the destination server. Please help.
Entry in script:
cat > $filebatch << __EOF__
mkdir $current_date
mkdir $current_date/$fpdomain
cd $current_date/$fpdomain
ls -l
__EOF__
Error:
sftp -b... (12 Replies)
Discussion started by: chococrunch6
12 Replies
8. UNIX for Dummies Questions & Answers
I'm making an sftp-connection to a remote server. I want the result of an ls-command in a local file and the result of ls on another folder in another local file. Because everything has to go as fast a possible I wan't to do everyting in one connection.
The command I use is : psftp -v -batch -b... (4 Replies)
Discussion started by: pistach
4 Replies
9. Shell Programming and Scripting
Trying to do so
echo "111:222:333" |awk -F: '{system("export TESTO=" $2)}'But it doesn't work (2 Replies)
Discussion started by: urello
2 Replies
10. Shell Programming and Scripting
Is there any way I can pass -f with rm command in sftp? If I use it it treats -f as a file name to be removed.
sftp> rm -f abcd
Couldn't stat remote file: No such file or directory
Removing /home/sdesai/-f
Couldn't delete file: No such file or directory
sftp> "rm -f" abcd
Invalid... (2 Replies)
Discussion started by: Soham
2 Replies
LEARN ABOUT DEBIAN
sftp-server
SFTP-SERVER(8) BSD System Manager's Manual SFTP-SERVER(8)
NAME
sftp-server -- SFTP server subsystem
SYNOPSIS
sftp-server [-ehR] [-f log_facility] [-l log_level] [-u umask]
DESCRIPTION
sftp-server is a program that speaks the server side of SFTP protocol to stdout and expects client requests from stdin. sftp-server is not
intended to be called directly, but from sshd(8) using the Subsystem option.
Command-line flags to sftp-server should be specified in the Subsystem declaration. See sshd_config(5) for more information.
Valid options are:
-e Causes sftp-server to print logging information to stderr instead of syslog for debugging.
-f log_facility
Specifies the facility code that is used when logging messages from sftp-server. The possible values are: DAEMON, USER, AUTH,
LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. The default is AUTH.
-h Displays sftp-server usage information.
-l log_level
Specifies which messages will be logged by sftp-server. The possible values are: QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1,
DEBUG2, and DEBUG3. INFO and VERBOSE log transactions that sftp-server performs on behalf of the client. DEBUG and DEBUG1 are
equivalent. DEBUG2 and DEBUG3 each specify higher levels of debugging output. The default is ERROR.
-R Places this instance of sftp-server into a read-only mode. Attempts to open files for writing, as well as other operations that
change the state of the filesystem, will be denied.
-u umask
Sets an explicit umask(2) to be applied to newly-created files and directories, instead of the user's default mask.
For logging to work, sftp-server must be able to access /dev/log. Use of sftp-server in a chroot configuration therefore requires that
syslogd(8) establish a logging socket inside the chroot directory.
SEE ALSO
sftp(1), ssh(1), sshd_config(5), sshd(8)
T. Ylonen and S. Lehtinen, SSH File Transfer Protocol, draft-ietf-secsh-filexfer-00.txt, January 2001, work in progress material.
HISTORY
sftp-server first appeared in OpenBSD 2.8.
AUTHORS
Markus Friedl <markus@openbsd.org>
BSD
January 9, 2010 BSD