Sponsored Content
Top Forums Shell Programming and Scripting shell script to copy files frm a linux machine to a windows machine using SCP Post 302540499 by ironmonkey555 on Thursday 21st of July 2011 12:56:39 AM
Old 07-21-2011
MySQL

The explanation you provided still seems unclear to me... but I assume that the file with unique name is generated by other application everyday, so you won't be requiring script to generate filename, but you only require a script to extract the name of latest file and scp it to windows machine....
The script I've provided you earlier, if you look carefully provides you latest file in that directory, however if you want some specific files only to be found in the result set, you can have 'grep' after 'ls -lgt', like

Code:
file_name=ls -lgt | grep regex | head -2 | awk '{print $7}'
$scp $file_name /windows/machine/path

To run this script daily you can put this script in cron schedule, I hope you are aware of it nicely!

Smilie




Quote:
Originally Posted by nithin6034
I need a script for this. Let me clear the things in detail.

I have a linux machine, where the file gets changing everyday (new files will be updated everyday). I want to copy the most latest file to the windows server.

I can use scp for this.

scp -r [/path/filename] [login name@ip address] : .

Here the filename gets changing everyday and I want to copy the files to a specific folder in Windows. How to do this using a script which automatically does this on a daily basis???

Seek ur help to solve this..

Last edited by Franklin52; 07-21-2011 at 03:53 AM.. Reason: Please use code tags for code and data samples, thank you
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

how can i copy data in LINUX Machine to windows XP

Can anyone tell me how can i copy data in LINUX Machine to windows XP Thanks, Sandeep (2 Replies)
Discussion started by: bsandeep_80
2 Replies

2. UNIX for Dummies Questions & Answers

Copy file from Remote Unix box to windows machine

Hi I need to copy a file from the remote unix server to windows machine. I read lot of thrad but didn't worked out. Requesting all to please help. (2 Replies)
Discussion started by: sameerspice
2 Replies

3. Solaris

Best possible communication mechanism between a Solaris machine and a windows machine

hi, I have some windows client machines which require a signal to be sent by a Solaris machine( SunOS 5.6) when ever a particular event occurs on that Solaris machine. What are possible communication mechanisms by which i can do this. the constraints are > the windows machines have to... (7 Replies)
Discussion started by: Krsh
7 Replies

4. Shell Programming and Scripting

SSH into a linux machine from a windows machine

I basically want to login into different linux machines( on the same network) from a windows machine. I know i can use ssh <machine name>. But i want to automate this process. I dont want to enter the username and password. Is there any way to do it. Can i make some sort of a batch script for it. (4 Replies)
Discussion started by: lassimanji
4 Replies

5. Red Hat

To find the LATEST file from a dir on REMOTE machine and SCP to local machine?

Hi All, URGENT - Please help me form a scipt for this: I need the LATEST file from a dir on REMOTE machine to be SCP'd to a dir on local machine. (and I need to execute this from local server) I know that the below cmd is used to find the LATEST file from a dir. But this command is not... (3 Replies)
Discussion started by: me_ub
3 Replies

6. UNIX for Dummies Questions & Answers

Cross complie linux make files onto a windows 7 machine using PGI Cygwin

Hello, I am very unfamiliar with linux/unix (don't even know the difference), but am trying to get some linux software to run on my Windows machine for my research. I have the makefiles for the software, and it is designed to be compiled in the PGI complier, which I also have. When i... (6 Replies)
Discussion started by: roba87
6 Replies

7. Shell Programming and Scripting

How to transfer files from unix machine to local machine using shell script?

Hi All.. Am new to Unix!! Am creating a shell script in which a scenario is like i have transfer the output file from unix machine (Server) to local directory (Windows xp). And also i have to transfer the input file from the local directory to Unix machine (Server) Any help from you... (1 Reply)
Discussion started by: vidhyaS
1 Replies

8. Shell Programming and Scripting

Running remote system shell script and c binary file from windows machine using java

Hi, I have an shell script program in a remote linux machine which will do some specific monitoring functionality. Also, have some C executables in that machine. From a windows machine, I want to run the shell script program (If possible using java). I tried with SSH for this. but, in... (1 Reply)
Discussion started by: ram.sj
1 Replies

9. Solaris

how to execute shell script present in unix machine remotely from windows

how to execute shell script present in unix machine remotely from windows? I having a shell script in my unix machine, need to execute the script remotely from my windows machine using Visual Basic or VBA macros. Thanks In Advance. --Suresh (1 Reply)
Discussion started by: sureshmani
1 Replies

10. UNIX for Dummies Questions & Answers

Copy files from Linux server local windows machine using a shell script

Hello, I need to create a shell script which will copy files - which are created on particular date and starting with particular name - to local windows XP machine. Is this possible.? Currently it is being done manually using winscp (1 Reply)
Discussion started by: NarayanaPrakash
1 Replies
SCP(3pm)						User Contributed Perl Documentation						  SCP(3pm)

NAME
Net::SCP - Perl extension for secure copy protocol SYNOPSIS
#procedural interface use Net::SCP qw(scp iscp); scp($source, $destination); iscp($source, $destination); #shows command, asks for confirmation, and #allows user to type a password on tty #OO interface $scp = Net::SCP->new( "hostname", "username" ); #with named params $scp = Net::SCP->new( { "host"=>$hostname, "user"=>$username } ); $scp->get("filename") or die $scp->{errstr}; $scp->put("filename") or die $scp->{errstr}; #tmtowtdi $scp = new Net::SCP; $scp->scp($source, $destination); #Net::FTP-style $scp = Net::SCP->new("hostname"); $scp->login("user"); $scp->cwd("/dir"); $scp->size("file"); $scp->get("file"); DESCRIPTION
Simple wrappers around ssh and scp commands. SUBROUTINES
scp SOURCE, DESTINATION Can be called either as a subroutine or a method; however, the subroutine interface is depriciated. Calls scp in batch mode, with the -B -p -q and -r options. Returns false upon error, with a text error message accessable in $scp->{errstr}. Returns false and sets the errstr attribute if there is an error. iscp SOURCE, DESTINATION Can be called either as a subroutine or a method; however, the subroutine interface is depriciated. Prints the scp command to be execute, waits for the user to confirm, and (optionally) executes scp, with the -p and -r flags. Returns false and sets the errstr attribute if there is an error. METHODS
new HOSTNAME [ USER ] | HASHREF This is the constructor for a new Net::SCP object. You must specify a hostname, and may optionally provide a user. Alternatively, you may pass a hashref of named params, with the following keys: host - hostname user - username interactive - bool cwd - current working directory on remote server login [USER] Compatibility method. Optionally sets the user. cwd CWD Sets the cwd (used for a subsequent get or put request without a full pathname). get REMOTE_FILE [, LOCAL_FILE] Uses scp to transfer REMOTE_FILE from the remote host. If a local filename is omitted, uses the basename of the remote file. mkdir DIRECTORY Makes a directory on the remote server. Returns false and sets the errstr attribute on errors. (Implementation note: An ssh connection is established to the remote machine and '/bin/mkdir -p' is used to create the directory.) size FILE Returns the size in bytes for the given file as stored on the remote server. Returns 0 on error, and sets the errstr attribute. In the case of an actual zero-length file on the remote server, the special value '0e0' is returned, which evaluates to zero when used as a number, but is true. (Implementation note: An ssh connection is established to the remote machine and wc is used to determine the file size.) put LOCAL_FILE [, REMOTE_FILE] Uses scp to trasnfer LOCAL_FILE to the remote host. If a remote filename is omitted, uses the basename of the local file. binary Compatibility method: does nothing; returns true. quit Compatibility method: does nothing; returns true. FREQUENTLY ASKED QUESTIONS
Q: How do you supply a password to connect with ssh within a perl script using the Net::SSH module? A: You don't (at least not with this module). Use RSA or DSA keys. See the quick help in the next section and the ssh-keygen(1) manpage. A #2: See Net::SCP::Expect instead. Q: My script is "leaking" scp processes. A: See "How do I avoid zombies on a Unix system" in perlfaq8, IPC::Open2, IPC::Open3 and "waitpid" in perlfunc. GENERATING AND USING SSH KEYS
1 Generate keys Type: ssh-keygen -t rsa And do not enter a passphrase unless you wanted to be prompted for one during file copying. Here is what you will see: $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/User/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/User/.ssh/id_rsa. Your public key has been saved in /home/User/.ssh/id_rsa.pub. The key fingerprint is: 5a:cd:2b:0a:cd:d9:15:85:26:79:40:0c:55:2a:f4:23 User@JEFF-CPU 2 Copy public to machines you want to upload to "id_rsa.pub" is your public key. Copy it to "~/.ssh" on target machine. Put a copy of the public key file on each machine you want to log into. Name the copy "authorized_keys" (some implementations name this file "authorized_keys2") Then type: chmod 600 authorized_keys Then make sure your home dir on the remote machine is not group or world writeable. AUTHORS
Could really use a maintainer with enough time to at least review and apply patches more patches. Or the module should just be deprecated in favor of Net::SFTP::Expect or Net::SFTP::Foreign and made into a simple compatiblity wrapper. Ivan Kohler <ivan-netscp_pod@420.am> Major updates Anthony Deaver <bishop@projectmagnus.org> Thanks to Jon Gunnip <jon@soundbite.com> for fixing a bug with size(). Patch for the mkdir method by Anthony Awtrey <tony@awtrey.com>. Thanks to terrence brannon <tbone@directsynergy.com> for the documentation in the GENERATING AND USING SSH KEYS section. COPYRIGHT
Copyright (c) 2000 Ivan Kohler Copyright (c) 2007 Freeside Internet Services, Inc. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. BUGS
Still has no-OO cruft. In order to work around some problems with commercial SSH2, if the source file is on the local system, and is not a directory, the -r flag is omitted. It's probably better just to use OpenSSH <http://www.openssh.com/> which is the de-facto standard these days anyway. The Net::FTP-style OO stuff is kinda lame. And incomplete. iscp doesnt expect you to be logging into the box that you are copying to for the first time. so it's completely clueless about how to handle the whole 'add this file to known hosts' message so it just hangs after the user hits y. (Thanks to John L. Utz III). To avoid this, SSH to the box once first. SEE ALSO
For a perl implementation that does not require the system scp command, see Net::SFTP instead. For a wrapper version that allows you to use passwords, see Net::SCP::Expect instead. For a wrapper version of the newer SFTP protocol, see Net::SFTP::Foreign instead. Net::SSH, Net::SSH::Perl, Net::SSH::Expect, Net::SSH2, IPC::PerlSSH scp(1), ssh(1), IO::File, IPC::Open2, IPC::Open3 perl v5.10.0 2007-10-26 SCP(3pm)
All times are GMT -4. The time now is 09:49 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy