09-14-2007
Knowing if a file has finished xferring
There may well be much more elegant ways of doing this but I have done this in the dim and distant past by simply looking at the files over a period of time - say one minute - and if the mtime and size have not changed then you can be pretty well sure the transfer has finished.
Possibly a better way would be to identify the process doing the transfer (via its pid via ps) and if/when the process finishes assume the transfer is complete.
*yet* another way would be to get the sending server to transfer a zero length 'flag' file when the transfer has finished. when you see the existance of the flag file you know the transfer has finished.
so
on server2
start send of filename..................send ends (this may take a while)
send finename.flag (0 length - this will take a very short time)
on server1 ensure you remove the flag files as you process the transfered files
Hope this helps
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
would any one please tell me which keys we used between opened vi files backward and forward
Thanks
Ayah (2 Replies)
Discussion started by: aya_r
2 Replies
2. Shell Programming and Scripting
I have an ftp statement that when it restarts, it will write over the top of the file at the other end, rather than append to the file part sitting at the destination.
This is a problem because the flaky connection fails so regularly that the 2GB file I try to transfer will never complete.
... (2 Replies)
Discussion started by: rupert160
2 Replies
3. Shell Programming and Scripting
HI All,
I am coding a shell script which will pick all the .csv files in a particular directoryand write it in to a .txt file, this .txt file i will use as a source in datastage for processing.
now after the processing is done I have to move and archive all the files in the .txt file to a... (5 Replies)
Discussion started by: subhasri_2020
5 Replies
4. UNIX for Dummies Questions & Answers
I am running a code like this
foreach list ($tmp)
mv *_${list}.txt ${chart}_${list}.txt #mv: when moving multiple files, last argument must be a directory
mv *_${list}.doc ${chart}_${list}.doc #mv: when moving multiple files, last argument must be a... (3 Replies)
Discussion started by: animesharma
3 Replies
5. Shell Programming and Scripting
I am trying to FTP files to a Windows server through my Linux machine. I have setup the file transfer with no problems but am having problem deleting those files from the Linux box. My current non-working solution is below. Any ideas, anyone?? :wall: Please be gentle, I'm fairly new to this... (4 Replies)
Discussion started by: jmalfhs
4 Replies
6. Shell Programming and Scripting
Hi guys can you please help me with a script to find files with one row/1 line of content then move the file to another directory my script below runs but nothing happens to the files....Alternatively Ca I get a script to find the *.csv files with "wc -1" results = 1 then create a list of those... (5 Replies)
Discussion started by: Dj Moi
5 Replies
7. UNIX for Dummies Questions & Answers
Selected directories on our system generate alerts when they exceed 60% of the disk space so I have used gzip to make the files smaller on one of the directories in question (AdminServer logs). I want to move these to another directory what is the best way to make this happen?
Thanks.. (4 Replies)
Discussion started by: nosuchluck
4 Replies
8. UNIX for Dummies Questions & Answers
Hi guys,
i need to test a script on my RedHat which it's mounted on a VirtualBox (oracle VM).
So i need to copy a directory with subdirectories, from a remote host to my VM.
I'd like to do that within cmd not with program like Filezilla or something like that.
Any idea please? (4 Replies)
Discussion started by: Newer
4 Replies
9. AIX
I have a bunch of hidden files in a directory in AIX. I would like to move these hidden files as regular files to another directory.
Say i have the following files in directory /x
.test~1234~567
.report~5678~123
.find~9876~576
i would like to move them to directory /y as
test~1234~567... (10 Replies)
Discussion started by: umesh.narain
10 Replies
10. UNIX for Beginners Questions & Answers
I have a strange problem with (t)csh since the latest opensuse/tumbleweed upgrade. csh and tcsh don't source the init files completely. They seem to terminate after sourcing the first nested file.
They process the code in /etc/csh.cshrc until they find a command like source... (3 Replies)
Discussion started by: heiko123
3 Replies
slack(8) System Manager's Manual slack(8)
NAME
slack - Sysadmin's lazy autoconfiguration kit
SYNOPSIS
slack [option ...] [role ...]
DESCRIPTION
slack is a master command which coordinates the activities of its backends, which variously:
o determine the list of roles to be installed on this server
o create a local cached copy of the role files from the central repository
o merge file trees from subroles into a single, unified tree
o install files onto the local filesystem
o run scripts before and after installation
Options you give to slack will be generally passed along to the backends where relevant.
OPTIONS
-h, --help
Print a usage statement.
--version
Print the version and exit.
-v, --verbose
Increase verbosity. Can be specified multiple times.
--quiet
Don't be verbose (Overrides previous uses of --verbose).
-C, --config FILE
Use the specfied FILE for configuration instead of the default, /etc/slack.conf.
-s, --source DIR
Source directory for slack files
-e, --rsh COMMAND
Remote shell for rsync
-c, --cache DIR
Local cache directory for slack files
-t, --stage DIR
Local staging directory for slack files
-r, --root DIR
Root destination for slack files
--no-sync
Skip the slack-sync step (useful if you're pushing stuff into the CACHE outside slack).
--no-files
Don't install any files in ROOT, but tell rsync to print what it would do.
--no-scripts
Don't run scripts
-n, --dry-run
Same as --no-files --no-scripts (CACHE, STAGE will still be updated)
--role-list
Role list for slack-getroles(8).
-b, --backup
Make backups of existing files in ROOT that are overwritten. This option defaults to on if it is not set to 0 in a config file or
disabled with --nobackup on the command line.
--backup-dir
Put backups from the --backup option into this directory.
-H, --hostname HOST
Pretend to be running on HOST, instead of the name given by gethostname(2).
--preview MODE
Do a diff of scripts and files before running them. MODE can be one of 'simple' or 'prompt' (See PREVIEW MODES, below).
--diff PROG
Use this diff program for previews.
--sleep TIME
Randomly sleep between 1 and TIME seconds before starting operations. Useful in crontabs.
PREVIEW MODES
Preview functionality is new in slack 0.14.0. I haven't quite worked out how things will work, so this usage is somewhat subject to change
in future versions. I thought I would try it this way and see how people like it.
In 'simple' mode, after syncing and staging the files directory, slack will present a diff of the files and scripts. In this mode, slack
will not run the preinstall or fixfiles scripts, and because of this, it may provide some false output about permissions changes to files.
In 'prompt' mode, after syncing and staging the files directory, slack will diff the script directory. If there are differences, slack
will present them to you and ask you if you want to continue. If you say no, it will exit. If you say yes, it will stage the scripts
directory, run the preinstall and fixfiles scripts, and then diff the files in the stage with those in the root. If there are differences,
slack will present them to you and ask you if you want to continue. If you say no, it will exit. If you say yes, it will install the
files and run the postinstall script.
So, the 'simple' mode is easy to use, and will be accurate if you don't use fixfiles. The 'prompt' mode will be accurate if you use fix-
files, but requires some interaction.
Why can't we just have one mode that works with fixfiles and requires no interaction? Well, that would require slack to understand what
your free-form fixfiles executable was going to do, which would either require some kind of universe simulator or would require you to
write your fixfiles in a less free-form way, which would make slack less like slack.
EXAMPLES
To install all the roles configured in the role list for a server:
slack
To install a specific role:
slack rolename
To test a new role before checking in the changes:
slack --source user@workstation:/home/user/.../slack rolename
To avoid killing your master server when calling from cron:
slack --sleep 3600
FILES
/etc/slack.conf
SEE ALSO
slack.conf(5), rsync(1)
Administrative commands 2004-10-22 slack(8)