私のUnix AIXでは、PowerCenterからのポストセッションを実行するシェルスクリプトを使用して、パラメータファイル内の日付をシステム日付に置き換える必要があります。パラメータファイルの日付をシステム日付に置き換えてください
私はSEDを使用して文字列変数を置き換えることはできますが、日付を使用して問題が発生しています。
デリミタとしてスラッシュの代わりにコンマを使用しようとしました。テストファイルの内容は次のようになります。
$$TESTFIELD=12/29/2016 14:57:51
私が感じたsedコマンドは動作するはずだった:私はtestfile.txt
にtmp.$$
を移動するだろうが、結果は次のエラーを投げた
sed -e "s,^\($$TESTFIELD=\).*,\1'date +"%D %T"'," testfile.txt > tmp.$$
た後:
sed: 0602-404 Function s,^\(14680298TESTFIELD=\).*,\1'date +%D cannot be parsed.
あなたは二重引用符を使用しているので、 'sed -e" s ... "は' $$ TESTFIELD'をその値に展開します。 – fedorqui
'sedの日付形式を変更する方法 '(http://stackoverflow.com/a/34080390/1983854)を見て、' sed'の中から外部コマンドを実行する方法を知りたいかもしれません。基本的に '-e'フラグを使う必要があります。 – fedorqui
おそらく、 'Now = $(date +"%D%T "); $$ '$$' –