シェルスクリプト出力でURLを作成する

シェルスクリプト出力でURLを作成する

Linuxサーバーには、カールを実行して次の出力を返すスクリプトがあります。

スクリプト:

/usr/bin/curl -k -s https://example.com:18080/seriessnapshot?substringSearch=OpenFin%20Memory | cut --characters=44-51 | sort --unique | sed -e 's/iessnaps//g' -e '/^$/d'

出力:

AP711671
AP714628
AP715911
AP716960
AP717267
AP717938
AP718017
AP718024
AP721570
AP721875
AP722002
AP722622

その後、各AP番号の出力に基づいてURLを作成する必要があります。たとえば、AP 番号ごとに次の出力を返す必要があります。

http://apRandomNumber.com:1025/

APを除くすべては静的であり、URLの唯一の動的部分はAP番号です。

AP番号を返すために使用しているのと同じスクリプトでこれを実行できますか?それでは、それをそのスクリプトにどのように統合できますか?

ベストアンサー1

sed簡単で簡単な方法は、コマンドを次に置き換えることです。

sed -n -E 's|^AP([[:digit:]]+)$|http://ap\1.ztb.icb.commerzbank.com:1025/|p' 
  • -n行印刷を抑制することで、最後にどの行が実際に印刷されるかをよりよく制御できます。
  • -E残りを簡単にするには、拡張正規表現を有効にしてください。
  • ^AP([[:digit:]]+)$数字で始まり、後に数字が続く行全体を一致させ、APその部分()をに配置します\1。複数の部分で構成されるより複雑なパターンがあると、()最終的には等になります。\2
  • 次に、\1値/内容を置換項目に直接挿入します。
  • p最後の行を印刷します(したがって、実際に置き換えが行われた行だけを印刷します)。

おすすめ記事