Sponsored Content
Top Forums Shell Programming and Scripting Script Pause Until Rsync Is Done Transferring Post 302319963 by jaysunn on Tuesday 26th of May 2009 04:35:58 PM
Old 05-26-2009
I like to use a lock file. This way the script will loop till lock file is gone than re execute:
Code:
#
# create name for lock file
#
lockDir="/root/lock_files"
lockFilePath="$lockDir/file.lock"
#
#
#
# Loop through servers until file is no longer exists
#  
while [ -e "$lockFilePath" ]
do

   exit
done
#
#
#
# create new lock file
#
touch $lockFilePath
#
#
#
# loop through servers and sync docroots and code
#
/usr/bin/rsync  --stats -e ssh -rlvtgoDz --delete  /dir/dir/dir/ root@server:/dir/dir/dir/ &
#
#
#
# Remove lock file........
#
rm -f $lockFilePath


Be sure to set up ssh keys. This is run on a Red Hat system.

Good Luck
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to pause a shell script

Hi, I've written a shell script to take photos with my camera. After every picture taken, the picture is transmitted to the computer via usb and then deleted on the camera. But sometimes there's an error and the picture is not deleted and so, after a certain time, the camera chip will be... (4 Replies)
Discussion started by: McLennon
4 Replies

2. Emergency UNIX and Linux Support

rsync transferring multiple files issue

Hi, I want to specify multiple remote directories but want to transfer them in a single command with one connection with remote server. This avoids entering passwords repeatedly and is also efficient. e.g. rsync -vrt --size-only --delete user@host:/home/user1/dir1... (9 Replies)
Discussion started by: sardare
9 Replies

3. Shell Programming and Scripting

Pause for remote computing in Telnet script

I am running a telnet script that connects to a database server and executes sql scripts. While the remote database is processing the commands within the sql scripts, my telnet script continues to send commands. Okay, that's fine. They get queued up in the remote server and executed sequentially.... (3 Replies)
Discussion started by: oldjuke
3 Replies

4. Shell Programming and Scripting

Pause shell script till folder doesn't change size anymore

Hi, I recently would like to write a shell script that 1. Runs in the background (can be done with "&", but i'd be happy for other solutions to keep programs running) 2. Does its stuff 3 THEN checks a specified folder for a size change over time (say, each 5 seconds. AND ONLY continues with... (9 Replies)
Discussion started by: pasc
9 Replies

5. Shell Programming and Scripting

Script for transferring files

Hi Guys, I have to transfer a few files in my system . The commands to be used are as follows . Will it be possible to send the output of the following in the form of a mail . cd /export/home/teja ls -lrt Quote.java* mv Quote.java Quote.java.20121023 cp /tmp/Quote.java . ls -lrt... (2 Replies)
Discussion started by: Ravi_Teja
2 Replies

6. Shell Programming and Scripting

Need script for transferring bulk files from one format to text format

"Help Me" Need script for transferring bulk files from one format to text format in a unix server. Please suggest (2 Replies)
Discussion started by: Kranthi Kumar
2 Replies

7. Shell Programming and Scripting

How to have my ksh script pause, until something appears in the logs.?

All, Is there some way to have my KSH script pause, until the word "DONE!" appears in the logfile /logs/log.txt? Difficulty: The word "DONE!" may already be present in logs from the past. So I anticipate tail -0f may (somehow?) need to be done in the background, instead of grepping in a... (16 Replies)
Discussion started by: chatguy
16 Replies

8. Shell Programming and Scripting

Creating a script requiring a pause for user input

Hi I'm trying to create a basic script that pauses for user input to verify a file name before generating the output. I have numerous SSL certificate files which I am trying to determine the expiry date so what I'm trying to do is write a script so that is pauses to request the name of the .pem... (9 Replies)
Discussion started by: Buddyluv
9 Replies

9. Shell Programming and Scripting

How can we overcome Broken pipe error during scp,SFTP,Rsync while transferring big files.?

Hello All, Hope all are doing well. We use scp (some times sftp and rsync also) for transferring big files (around 2GB each ) from 1 Network to another Network. The Issues which we face :- During transfer some times( Once in 1 week (or twice)) , the speed of transfer gets down to 30 kb/s,... (2 Replies)
Discussion started by: Upendra Bhushan
2 Replies

10. Shell Programming and Scripting

Rsync Error: rsync: link_stat failed: No such file or directory (2)

I wish to copy all the files & folder under /web/Transfer_Files/data/ on mymac1 (Linux) to remote server mybank.intra.com (Solaris 10) /tmp/ location I am using Ansible tool synchronize module which triggers the unix rsync command as below:rsync --delay-updates -F --compress --archive --rsh=ssh... (2 Replies)
Discussion started by: mohtashims
2 Replies
LOCKS(3)						   libbash locks Library Manual 						  LOCKS(3)

NAME
locks -- libbash library that implements locking (directory based). This library is not throughoutly tested - use with caution! SYNOPSIS
dirInitLock <object> [<spin>] dirTryLock <object> dirLock <object> dirUnlock <object> dirDestroyLock <object> DESCRIPTION
General locks is a collection of functions that implement locking (mutex like) in bash scripting language. The whole idea is based on the fact that directory creation/removal is an atomic process. The creation of this library was inspired by studying CVS locks management. Same lock object can by used by several processes to serialize access to some shared resource. (Well, yeah, this what locks were invented for...) To actually do this, processes just need to access lock object by the same name. Functions list: dirInitLock Initialize a lock object for your proccess dirTryLock Try to lock the lock object - give up if its already locked dirLock Lock the lock object - will block until object is unlocked dirUnlock Unlock the lock object dirDestroyLock Destroy the lock object - free resources Detailed interface description follows. FUNCTIONS DESCRIPTIONS
dirInitLock <object> [<spin>] Initialize a lock object for your process. Only after a lock is initialized, your proccess will be able to use it. Notice: This action does not lock the object. The lock can be set on two types of objects. The first is an existing directory. In this case, Aq dir must be a path (relative or full). The path must contain a '/'. The second is an abstract object used as a lock. In this case, the name of the lock will not contain any '/'. This can be used to create locks without creating real directories for them. Notice: Do not call your lock object '.lock'. Parameters: <object> The name of the lock object (either existing directory or abstract name) <spin> The time (in seconds) that the funtion dirLock will wait between two runs of dirTryLock. This parameter is optional, and its value gen- erally should be less then 1. If ommited, a default value (0.01) is set. Return Value: One of the following: 0 The action finished successfully. 1 The action failed. You do not have permissions to preform it. 3 The directory path could not be resolved. Possibly parameter does contain '/', but refers to directory that does not exist. dirTryLock <object> Try to lock the lock object. The function always returns immediately. Parameters: <object> The object that the lock is set on. Return Value: One of the following: 0 The action finished successfully. 1 The action failed. The object is already locked. 2 The action failed. Your proccess did not initialize a lock for the object. 3 The directory path could not be resolved. dirLock <object> Lock given lock object. If the object is already locked - the function will block untill the object is unlocked. After each try (dirTry- Lock) the function will sleep for spin seconds (spin is defined using dirInitLock ). Parameters: <object> The directory that the lock is set on. Return Value: One of the following: 0 The action finished successfully. 2 The action failed. Your proccess did not initialize a lock for the directory. 3 The directory path could not be resolved. dirUnlock <dir> Unlock the lock object. Parameters: <object> The object that the lock is set on. Return Value: One of the following: 0 The action finished successfully. 2 The action failed. Your proccess did not initialize the lock. 3 The directory path could not be resolved. dirDestroyLock <object> Destroys the lock object. After this action the proccess will no longer be able to use the lock object. To use the object after this action is done, one must initialize the lock, using dirInitLock. Parameters: <object> The directory that the lock is set on. Return Value: One of the following: 0 The action finished successfully. 1 The action failed. The directory is locked by your own proccess. Unlock it first. 2 The action failed. Your proccess did not initialize the lock. 3 The directory path could not be resolved. EXAMPLES
Creating an abstract lock named mylock, with 0.1 second spintime: $ dirInitLock mylock 0.1 # $?=0 Locking it: $ dirLock mylock # $?=0 Trying once to lock it again: $ dirTryLock mylock # $?=1 Trying to lock it again: $ dirLock mylock # Will wait forever Unlocking: $ dirUnlock mylock # $?=0 Destroying the lock: $ dirDestroyLock mylock # $?=0 Trying to lock again: $ dirLock mylock # $?=2 Creating a lock on the directory ./mydir, with default spin time: $ dirInitLock ./mydir # $?=0 AUTHORS
Hai Zaar <haizaar@haizaar.com> Gil Ran <gil@ran4.net> SEE ALSO
ldbash(1), libbash(1) Linux Epoch Linux
All times are GMT -4. The time now is 05:20 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy