このシェル スクリプトを維持する必要があります。
export DAYDAY=`gdate --date "30 days ago" +"%Y%m%d"`
if [ -d $TMP/AA/$DAYDAY]; then
rm -r $TMP/AA/$DAYDAY
fi
しかし、見つからないため実行できませんgdate。このコードは、ちょうど 30 日前のログ ディレクトリをクリアするためのものです。
G NUですdate。BSD 関連のシステムで呼び出さgdateれ、独自のdate.
私は 90% が Mac のオフィスで Linux に取り組んでおり、かなりの数の同僚のスクリプトがgsedや などを参照していgdateます。スイッチをオンにしてこれを適切に修正できなかった場合、$OSTYPE最終的に降伏してこれを実行しました。
sudo ln -s $(which date) /bin/gdate
これは へのシンボリックリンクgdateですdate。
GNU/Linuxにインストールされているバージョンは明らかにGNUバージョンであるgdateためgsed、これは非常に安全ですgtar。gmake
もちろん、コマンドをエイリアスすることもできますが、これによりユーザーとシェルが引き継がれます。事実上、プログラム全体をエイリアシングしています。
Linux 以外の *nix システムでは、GNU フレーバーのユーティリティがプレフィックスg( gmake、gtarなど) を付けてインストールされるのがかなり一般的です。この場合、これはdateコマンドの GNU フレーバーを指している可能性があります。したがって、Linux を使用しているため、次のように変更するだけdateです。
export DAYDAY=`date --date "30 days ago" +"%Y%m%d"`
if [ -d $TMP/AA/$DAYDAY]; then
rm -r $TMP/AA/$DAYDAY
fi