---
name: "tomahawk3"
section: "1"
platform: "linux"
package: "python3-tomahawk"
version: "0.7.1-2.1"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/tomahawk3"
---

# tomahawk3(1)

enables to execute a command to many hosts

## NAME

tomahawk3 - enables to execute a command to many hosts

## SYNOPSIS

**tomahawk3** \[*options*\] command

## DESCRIPTION

**tomahawk3** is a program that enables to execute a command into many hosts.

```
$ tomahawk3 -h host1,host2,host3 uptime
```

\---\> 'uptime' command will be executed in host1, host2, and host3 with following output.

```
oinume@host1 % uptime
22:41:27 up 10 days,  3:26,  1 users,  load average: 1.11, 1.13, 1.11
oinume@host2 % uptime
22:41:28 up 20 days,  4:26,  2 users,  load average: 2.11, 2.13, 2.11
oinume@host3 % uptime
22:41:29 up 30 days,  5:26,  3 users,  load average: 3.11, 3.13, 3.11
```

### ssh

tomahawk3 executes a command via 'ssh'. You can specify options for ssh with -o/--ssh-options and can configure ssh behavior with $HOME/.ssh/config.

### hosts file

\-h option enables you to specify hosts, another option '-f', which is specifying hosts files. hosts file is listing host names like this

```
host1
host2
host3
#host4
```

Starting with "#" means commenting the host out.

### shell operators

tomahawk3 executes commands via shell(/bin/sh), so you can use '\|' (pipe), '&&', '\|\|' operators and so on.

```
$ tomahawk3 -h host1,host2 'ps auxww | grep python'
```

## OPTIONS

These programs follow the usual GNU command line syntax, with long options starting with two dashes ('--'). A summary of options is included below. For a complete description, see the Info files.

### -H, --hosts

Specifies host names for sending commands. You can specify multiple hosts with ','.

### -f, --hosts-files

Specifies hosts files which listed host names for sending commands. You can specify multiple hosts files with ','.

Format of hosts file is below.

```
web01
web02
#web03
web04
```

A line of starting with '#' disables a host.

### -l, --prompt-login-password

Prompts a password for ssh authentication at first. If the password is all the same between target hosts, you'll input a password just once.

### --login-password-stdin

Read a SSH password from stdin instead of prompting.

### -s, --prompt-sudo-password

Prompts a password for sudo.

### -c, --continue-on-error

Continues to send commands even if any errors. The default behavior is fail-safe, means that tomahawk3 will stop if any errors.

### -p, --parallel

Specifies a number of processes for parallel command execution. (default: 1) If your machine has multiple cpu cores, --parallel 2 .. N might be faster.

### -t, --timeout

Specifies timeout seconds for a command.

### -u, --ssh-user

Specifies ssh user. The default is a current logged in user.

### -o, --ssh-options

Specifies ssh options.

### -F, --output-format

Specifies command output format. The default is **'${user}@${host} % ${command}\\n${output}\\n'**

### -V, --verify-output

Verify command output of all hosts. For additional information, see *checking-files-on-remote-hosts*

### -C, --conf

Specifies configuration file path. For additional information, see *omit-command-line-options*

## ENVIRONMENT VARIABLES

tomahawk's behavior is affected by the following environment variables.

### TOMAHAWK\_ENV

This variable specifies an environment of 'production', 'testing' or 'development'. If TOMAHAWK\_ENV=production specified, *tomahawk3* or *tomahawk-rsync3* prompt as "command "%s" will be executed %s hosts. Are you sure? \[yes/NO\]: ". The environment variable exists for mis-execution of a command.

## SEE ALSO

- •

  *[tomahawk-rsync3(1)](/tomahawk-rsync3/1.md)*

- •

  *[ssh(1)](/ssh/1.md)*

## AUTHOR

Kazuhiro Oinuma, Kohei Maeda

## COPYRIGHT

2011-2014, Kazuhiro Oinuma
