diff --git a/tools/cleanup-containers b/tools/cleanup-containers
index 18988b522da9bb4b433fabfdd1f85e8e0cb31877..82683fa5751e90280780ea22b26f860902d01b48 100755
--- a/tools/cleanup-containers
+++ b/tools/cleanup-containers
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 containers_running=$(sudo docker ps --filter "label=kolla_version" --format "{{.Names}}")
 
diff --git a/tools/cleanup-host b/tools/cleanup-host
index e9c716eb894b65a763df7de0e443993f87667159..daaf5f8dde1b8f35c6ed21cb967d70989b107303 100755
--- a/tools/cleanup-host
+++ b/tools/cleanup-host
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 # Spawning the neutron agents containers leaves artifacts on the host.
 # This script removes these artifacts.
diff --git a/tools/cleanup-images b/tools/cleanup-images
index 68b01b539901651d758e5d4f7c88c7ae97d88f36..87b2084acaf38e557b4588b75bf5e40d97d17c6d 100755
--- a/tools/cleanup-images
+++ b/tools/cleanup-images
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 # Move to top level directory
 REAL_PATH=$(python -c "import os;print os.path.realpath('$0')")
diff --git a/tools/diag b/tools/diag
index a01d4752fa073f65480535dc50d22fa41668cf0b..5f270dae64d312bdf22eddd3f2cd1347b9dfa6f1 100755
--- a/tools/diag
+++ b/tools/diag
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 echo "##### System Identification #####"
 egrep -w 'PRETTY_NAME|VERSION_ID' /etc/os-release
diff --git a/tools/init-runonce b/tools/init-runonce
index 0c5d89845845a47d7dbbf4fed408bccceb4fddbd..b4b8739917da508bfb692d99be9cb68a2c8fa4af 100755
--- a/tools/init-runonce
+++ b/tools/init-runonce
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 set -o errexit
 set -o pipefail
diff --git a/tools/kolla-ansible b/tools/kolla-ansible
index 05e40d313ba10cad7a40123dc20e0ea99a8142c7..a6d222b7ab4811f5542744402402fccd0232eed9 100755
--- a/tools/kolla-ansible
+++ b/tools/kolla-ansible
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # This script can be used to interact with kolla via ansible.
 
diff --git a/tools/loc b/tools/loc
index 60b14e24fda8d6accebe8bcddcaf9e8517450178..5abecbc97b92f6bff9ce1143b7fffa647ea951f1 100755
--- a/tools/loc
+++ b/tools/loc
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 ANSIBLE=`find ansible -type f -exec cat {} \; | wc -l`
 DOCKER=`find docker -type f -exec cat {} \; | wc -l`
diff --git a/tools/ovs-dpdkctl.sh b/tools/ovs-dpdkctl.sh
index c24ab802f0e616d77dbf48a538145ea00b44ec93..ea8cd6e89780b4a37213bf0fdb2f03bebd8da875 100755
--- a/tools/ovs-dpdkctl.sh
+++ b/tools/ovs-dpdkctl.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 _XTRACE_OVS_DPDK_CTL=$(set +o | grep xtrace)
 if [[ "${OVS_DPDK_CTL_DEBUG}" == "True" ]]; then
diff --git a/tools/pre-commit-hook b/tools/pre-commit-hook
index a589f6f3fc03a25b815bade0e3c2d179ab9ce988..994716107427515bcfb2a3d62ea1d18dd2bc7289 100755
--- a/tools/pre-commit-hook
+++ b/tools/pre-commit-hook
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 TOPLEVEL=$(git rev-parse --show-toplevel)
 RES=0
diff --git a/tools/run-bashate.sh b/tools/run-bashate.sh
index 2a92e960b59c1efbab8b7f2be80f7069e4ce0fcf..b8a54b4403ee39cb4c67b641ef7ce457931449be 100755
--- a/tools/run-bashate.sh
+++ b/tools/run-bashate.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 # Ignore E006 -- line length greater than 80 char
 # Error on E005 -- file does not begin with #! or have .sh prefix
diff --git a/tools/validate-all-yaml.sh b/tools/validate-all-yaml.sh
index 960de9a58a99b93852ead57307a32cd4aa766969..07652ca091a0efe096e19d9698f5a1223bc17df1 100755
--- a/tools/validate-all-yaml.sh
+++ b/tools/validate-all-yaml.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 REAL_PATH=$(python -c "import os,sys;print os.path.realpath('$0')")
 cd "$(dirname "$REAL_PATH")/.."
diff --git a/tools/validate-docker-execute.sh b/tools/validate-docker-execute.sh
index 94a6756cb8c5ed60f1d7517951081bb757dea312..4db81e1e23a11290a1174d4b2645e83377f41d1b 100755
--- a/tools/validate-docker-execute.sh
+++ b/tools/validate-docker-execute.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # This script can be used to check user privilege to execute
 # docker commands