≡ Menu

Run / Execute Command Using SSH

How do I run a command using ssh under UNIX, OS X, *BSD, and Linux operating systems?

The SSH client program can be used for logging into a remote machine or server and for executing commands on a remote machine. When command is specified, it is executed on the remote host/server instead of a login shell. The syntax is as follows for executing commands over ssh:

ssh user1@server1 command1
ssh user1@server1 'command2'
ssh user1@server1 'command1 | command2'

The ssh client will login to a server called server1, using user name called user1 and run a command call command1.

Examples: run commands over ssh

Get remote server date and time:

ssh user1@server1 date

Find out remote server disk space usage:

ssh user1@server1 'df -H'

Find out remote server kernel version and Linux distro names:

ssh root@nas01 uname -mrs


ssh root@nas01 lsb_release -a

Sample session:

Animated gif 01: Running commands using ssh client

Animated gif 01: Running commands using ssh client

Run a script called /scripts/backup.sh:

ssh operator@oracle1  '/scripts/backup.sh'

Run sudo or su command using the following syntax:

## sudo syntax ##
ssh -t user@hostname sudo command
ssh -t user@hostname 'sudo command1 arg1 arg2'
## su syntax ##
ssh user@nas01 su -c "/path/to/command1 arg1 arg2"
# RHEL/CentOS specific #
ssh user@nas01 su --session-command="/path/to/command1 arg1 arg2"
ssh vivek@nixcraft.home.server su --session-command="/sbin/service httpd restart"

{ 3 comments… add one }

  • Bill October 20, 2015, 9:41 am

    Typo with the lsb_release command. Where you have it as host, not command.

    • Vivek Gite October 20, 2015, 7:00 pm

      Thanks for the heads up. The faq has been updated.

  • sumon November 25, 2015, 1:11 pm

    how can I run/execute ‘nm-tool’ command remotely from the server on host through ssh protocol??

Leave a Comment

   Tagged with: , , , , , , ,