21

Possible Duplicate:
how to use ssh to run shell script on a remote machine?

I am trying to make a bash script that runs on my remote server's daily cron jobs to automatically login through ssh to another unix box, run a few commands and then leave.

#!/bin/bash
ssh machinehost.com -l admin -p 2222 "/usr/bin/find /share/Public/backups/set0 -mtime +14 | xargs rm -f;
                               /usr/bin/find /share/Public/backups/set1 -mtime +4 | xargs rm -f;
                               /usr/bin/find /share/Public/backups/set2 -mtime +3 | xargs rm -f;
                               /usr/bin/find /share/Public/backups/set3 -mtime +21 | xargs rm -f;
                               /usr/bin/find /share/Public/backups/set4 -mtime +2 | xargs rm -f;
                               /usr/bin/find /share/Public/backups/set5 -mtime +2 | xargs rm -f;
                               "

The problem I am having is I need to modify my current existing code to do something a little more complicated before each command like

if [ $(ls /share/Public/backups/set1 -1 | wc -l ) -gt 4 ] then run above command
fi

How would I go about running this command on the remote ssh machine and not on my local cron one?

1
  • @Wooble The other question was asking for a way to run a shell script on a remote computer, where as that is a solution to the problem for this poster. I think the question is different enough. Commented Aug 13, 2011 at 2:52

3 Answers 3

47

Try writing your bash script locally and calling:

ssh [email protected] 'bash -s' < local_script.sh

(Found in the discussion here)

Sign up to request clarification or add additional context in comments.

Comments

3

Write a script, copy it to the remote machine and from ssh run just that script.

1 Comment

This is the approach I use on my servers.
1

Another workaround is to use python. There is a module called pexpect that can solve your problem, and even more complicated scenario.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.