sed
少し変数の補間が必要なJenkinsfile内で呼び出される単純なコマンドに苦労しているので、今助けを求めています。
大きな説明ではなく、コマンドを表示する方がよい:
sh "sed -i -e 's/-RELEASE/-${unixEpoch}/g' myFile"
sed
この構文に同意せず、コマンドs/
が終了していないことを出力します。
StringとGStringに関するGroovyのドキュメントを読みましたが、何が間違っているのかまだわかりません。
これに関する手がかりはありますか?
編集:
私は取得していますunixEpoch
呼び出すことによって、date +%s
現在のタイムスタンプを取得するために。
何が実行されたかを確認するためにコマンドを出力したところ、次のことがわかりました。
sed -i -e 's/-RELEASE/-1525341883'
/g' myFile
によって送信される完全なエラーsed
は次のとおりです。
sed: -e expression #1, char 22: unterminated 's' command
印刷されたコマンド\n
の途中にが含まれているのは奇妙だと思いました...
date +%s
最後に改行があり、生成さsed
れた改行にそれを補間すると、なぜsed
不平を言っているのかを説明する改行が含まれます。使用する前に${unixEpoch.trim()}
、unixEpoch
値を実行またはトリミングできます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加