0

次のように logFileName を作成する ksh スクリプトがあります。

logFileName=result_`date +%y%m%d_%k%M%S`.log

これにより、ほとんどの場合、次のような正しいファイル名が得られます。

result_121127_121010.log

ただし、深夜になると、次のファイル名になります。

result_121127_ 01010.log

これを修正する方法について考えていますか?%k基本的に、kshのdateコマンドで時間を見つける以外の何かを探しています。

4

1 に答える 1

2

%k を %H に置き換えます。これは、前者が 1 桁の時間を 0 で埋めないためです。

logFileName=result_`date +%y%m%d_%H%M%S`.log

または同等のもの

logFileName=result_$(date +%y%m%d_%H%M%S).log

有名な Y2K バグは、次のように完全な年を使用する方が良いことを示していることに注意してください。

logFileName=result_$(date +%Y%m%d_%H%M%S).log
于 2012-11-27T18:56:50.170 に答える