私はプログラミングにまったく慣れていません。3台のサーバーで実行するスクリプトを作成しようとしています。このスクリプトはホスト名を取得してから、適切なコマンドを実行する必要があります。方法はわかりませんが、「ケース」を使用する必要があると思います。これが私のコードです。
#!/bin/bash
#Get hostname
hostname="$HOSTNAME"
PATH_DEV="some_path"
PATH_PREPROD="some_path"
PATH_PROD="some_path"
if [ $hostname == "dev" ];
then
find $PATH_DEV -name '*.mysql.gz' -type f -mtime +7 -exec rm -rf '{}' \;
elif [ $hostname == "prod" ];
then
find $PATH_PROD -name '*.mysql.gz' -type f -mtime +7 -exec rm -rf '{}' \;
elif [ $hostname == "preprod" ];
then
find $PATH_PREPROD -name '*.mysql.gz' -type f -mtime +7 -exec rm -rf '{}' \;
else
echo "Unknown hostname!";
fi
「dev」でのみ実行されます。他の2つのケースでは、「不明なホスト名!」が返されます。私が間違っているのは何ですか?:(
ありがとう。