shp2pgsql: command not found

Have You tried accessing the binary with the full path?

Maybe Your $PATH variable doesn't contain the default paths? echo $PATH should give something like:

[root@server ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

If it's empty, You may set the PATH variable with this command

export PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin"

On CentOS possible default full paths are:

/usr/bin/shp2pgsql - from package: postgis

You may install the required package with command yum install {package}

On Debian possible default full paths are:

/usr/bin/shp2pgsql - from package: postgis

You may install the required package with command apt-get install {package}
Error in other languages:
shp2pgsql: bevel nie gevind nie
shp2pgsql: comandă negăsită
shp2pgsql: comando não encontrado
shp2pgsql: commande introuvable
shp2pgsql: command not found
shp2pgsql: käsku ei ole
shp2pgsql: không tìm thấy lệnh
shp2pgsql: komanda nerasta
shp2pgsql: Kommando nicht gefunden.
shp2pgsql: kommandot finns inte
shp2pgsql: komut yok
shp2pgsql: nie znaleziono polecenia
shp2pgsql: níor aimsíodh an t-ordú
shp2pgsql: no se encontró la orden
shp2pgsql: no s'ha trobat l'ordre
shp2pgsql: opdracht niet gevonden
shp2pgsql: parancs nem található
shp2pgsql: perintah tidak ditemukan
shp2pgsql: príkaz nenájdený
shp2pgsql: příkaz nenalezen
shp2pgsql: команда не найдена
shp2pgsql: командата не е открита
shp2pgsql: 命令找不到
shp2pgsql: コマンドが見つかりません