log_Jan_01_hh:mm:ss
変数timestampが次のように定義されるようにlog_filesの名前を指定したいと思いますdate +"%b_%d_%T"
。
ここで値を変数に設定すると、次のようになります。
setenv now `date +"%b_%d_%T"`
その後、$now
変数はその時点で更新された値を取得するため、ログファイルの名前は常に同じです。
$now
各瞬間の価値を更新するにはどうすればよいですか?
ベストアンサー1
文字列を保存し$now
て呼び出すときにバックティックを追加すると、現在の日付が得られます。
[~]% setenv now 'date +"%b_%d_%T"'
[~]% echo $now
date +"%b_%d_%T"
[~]% echo `$now`
"Dec_03_13:09:52"
[~]% echo `$now`
"Dec_03_13:09:54"
これは、次のことと事実上同じです。
[~]% echo `date +"%b_%d_%T"`
呼び出し変数を再評価するようにコマンドに指示する方法はありませんtcsh
。変数に文字列を割り当てると、$now
そのtcsh
文字列を生成したコマンドが何であるかがわかりません。
別の(可能な)解決策は関数を使用することですが、tcsh
その関数もありません。