04-22-2020
man bash is your friend:
Quote:
Here Documents
This type of redirection instructs the shell to read input from the current source until a line containing only delimiter (with no trailing blanks)
is seen. All of the lines read up to that point are then used as the standard input (or file descriptor n if n is specified) for a command.
The format of here-documents is:
[n]<<[-]word
here-document
delimiter
No parameter and variable expansion, command substitution, arithmetic expansion, or pathname expansion is performed on word. If any part of word is quoted, the delimiter is the result of quote removal on word, and the lines in the here-document are not expanded. If word is unquoted, all lines of the here-document are subjected to parameter expansion, command substitution, and arithmetic expansion, the character sequence \<newline> is ignored, and \ must be used to quote the characters \, $, and `.
You are in a dilemma here: you want the
IP variable expanded locally, but the other variables expanded remotely. For the first, you can't have the "word" quoted, but it must be unquoted, so, for the second, you need to apply the escapes for the
$ signs.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I am trying to search and remove files from a list of servers. I want to find every occurence of this file on each machine and then remove it. If I execute the find command on the remote machine I would like to be able to pipe the output to xargs and remove the file. Does anyone know hat would be... (1 Reply)
Discussion started by: sewood
1 Replies
2. Shell Programming and Scripting
Hi All,
i have two machines like x and y . my requirement is i should connect to machine Y from x through ssh connection . and do some operation such as copy and move and delete files in Y machine .
i tried with this code but it is doing in machine x only . and i need to exit from Y when... (1 Reply)
Discussion started by: rateeshkumar
1 Replies
3. Shell Programming and Scripting
Hello to all
Background info:
Local machine : Linux, /bin/bash
Remote machine (for the user used for ssh) : SunOs, /bin/ksh
(so we have different OS, different Shells)
My problem :
From the local host i execute
$ var=bla
$ result=$(ssh -q user@remote-machine "
> echo \"this is... (12 Replies)
Discussion started by: black_fender
12 Replies
4. UNIX for Dummies Questions & Answers
how to use ssh to run shell script on a remote machine?
ssh user@remote sh ./script.unx
i ran the above command
./script.unx HAS NOHUP COMMAND IN ITS BODY, I AM GETTING ERROR AS NOHUP NOT FOUND...
i tried to run that script from remote server, its working fine
do ineed to set... (6 Replies)
Discussion started by: only4satish
6 Replies
5. Shell Programming and Scripting
Hello,
I am running into few issues, please suggest me what I am missing.
I am running this script on a linux host.
Main idea of this script is to, login to each host via ssh and get uid of user, service user that I trying to run this script, has already deployed ssh keys and provide sudo... (8 Replies)
Discussion started by: bobby320
8 Replies
6. Shell Programming and Scripting
Hi,
I'm trying to automate a couple of mounts. (I would do this in fstab, but the auto feature causes the virtual machine I'm running in to freeze when it boots up) If the machine I'm trying to connect to is OFF, I get the host unreachable error and then the bash script stops. The problem is... (3 Replies)
Discussion started by: jdilts
3 Replies
7. Red Hat
I want to SSH to 192.168.1.15 Server from my machine, my ip was 192.168.1.99
Source Destination was UP, with IP 192.168.1.15.
This is LAN Network there are 30 Machine's Connected to the network and working fine, I'm Playing around the local machine's because I need to apply the same rules in... (2 Replies)
Discussion started by: babinlonston
2 Replies
8. Linux
How to execute a script in remote machine through ssh
I have a script test.sh which does some backup activity in remote machine. Wanted to keep backup also in remote machine.
ssh -l username <remote machine> "commands to be exceuted as ; separted"
but how to put the script in the place of... (5 Replies)
Discussion started by: sanvel
5 Replies
9. Shell Programming and Scripting
Geeks,
Could you please help me out in my script and identify the missing piece. I need to check/get the exit status of a remote command executed on remote host through script and send out an email when process/processes is/are not running on any/all server(s).
Here's the complete... (5 Replies)
Discussion started by: lovesaikrishna
5 Replies
10. Shell Programming and Scripting
Hi,
My goal is to connect from unix server A to windows server B and call a bat file on windows.
I am able to succeed in remoting to windows and executing a command, the issue i am facing is the shell scrip is exiting without making sure of bat file success.
Can you please help me in... (4 Replies)
Discussion started by: pxp018
4 Replies
LEARN ABOUT DEBIAN
svn::notify::mirror::rsync
SVN::Notify::Mirror::Rsync(3pm) User Contributed Perl Documentation SVN::Notify::Mirror::Rsync(3pm)
NAME
SVN::Notify::Mirror::Rsync - Mirror a repository path via Rsync
SYNOPSIS
Use svnnotify in post-commit:
svnnotify --repos-path "$1" --revision "$2"
--handler Mirror::Rsync --to "/path/to/local/htdocs"
[--svn-binary /full/path/to/svn]
--rsync-host remote_server
[--rsync-delete=[yes|no]]
[--rsync-dest "/path/on/remote/server"]
[--rsync-args arg1 [--rsync-args arg2...]]
[[--rsync-ssh] [--ssh-user remote_user]
[--ssh-identity /home/user/.ssh/id_rsa]]
or better yet, use SVN::Notify::Config for a more sophisticated setup:
#!/usr/bin/perl -MSVN::Notify::Config=$0
--- #YAML:1.0
'':
PATH: "/usr/bin:/usr/local/bin"
'path/in/repository':
handler: Mirror
to: "/path/to/www/htdocs"
'some/other/path/in/repository':
handler: Mirror
to: "/path/to/local/www/htdocs"
rsync-host: "remote_host"
rsync-dest: "/path/on/remote/www/htdocs"
ssh-user: "remote_user"
ssh-identity: "/home/user/.ssh/id_rsa"
DESCRIPTION
Keep a directory in sync with a portion of a Subversion repository. Typically used to keep a development web server in sync with the
changes made to the repository. This directory can either be on the same box as the repository itself, or it can be remote (via SSH
connection).
USAGE
Depending on whether the target is a "Local Mirror" or a Remote Mirror, there are different options available. All options are available
either as a commandline option to svnnotify or as a hash key in SVN::Notify::Config (see their respective documentation for more details).
Working Copy on Local host
Because 'svn export' is not able to be consistently updated, the local rsync'd directory must be a full working copy. The remote server
will only contain the ordinary files (no Subversion admin files).
The files in the working copy must be writeable (preferrably owned) by the user identity executing the hook script (this is the user
identity that is running Apache or svnserve respectively).
Local Mirror
Please see " SVN::Notify::Mirror " for details.
Remote Mirror
Used for directories not located on the same machine as the repository itself. Typically, this might be a production web server located in
a DMZ, so special consideration must be paid to security concerns. In particular, the remote mirror server may not be able to directly
access the repository box.
o rsync-host
This value is required and must be the hostname or IP address of the remote host (where the mirror directories reside).
o rsync-delete
The default mode of operation is to delete remote files which are not present in the local working copy. NOTE: this will delete any
unversioned files in the remote directory tree. Unless you have all of your files under version control, you should pass the
"--no-rsync-delete" or "--rsync-delete no" option.
o rsync-dest
This optional value specifies the path to update on the remote host. If you do not specify this value, the same path as passed in as
the "--to" parameter will be used (this may not be what you meant to do).
o rsync-args
This optional parameter can be used to pass additional commandline options to the rsync command. You can use this multiple times in
order to pass multiple options. The default args are "--archive --compress". See the "rsync-ssh" options for using SSH instead of RSH
(rather than pass those commands via "--rsync-args"
o rsync-ssh
This optional parameter signals that you wish to use SSH instead of whatever the default remote shell program is configured in your
copy of rsync. You may need to set one or more of the "ssh-*" parameters as well.
o ssh-user
If the remote user is different than the local user executing the postcommit script, you can specify it with this parameter. You would
often use this in conjunction with the next parameter.
o ssh-identity
This value may be optional and should be the full path to the local identity file being used to authenticate with the remote host. If
you are setting the ssh-user to be something other than the local user name, you will typically also have to set the ssh-identity.
AUTHOR
John Peacock <jpeacock@cpan.org>
COPYRIGHT
Copyright (c) 2005-2008 John Peacock
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
The full text of the license can be found in the LICENSE file included with this module.
SEE ALSO
SVN::Notify, SVN::Notify::Config, SVN::Notify::Mirror
perl v5.14.2 2012-07-04 SVN::Notify::Mirror::Rsync(3pm)