wgetなどのユーティリティをダウンロードするためのURLを1行にまとめます。

wgetなどのユーティリティをダウンロードするためのURLを1行にまとめます。

次のwgetコードを検討してください。

wget -P ~/ https://raw.githubusercontent.com/user/repo/branch/papj.sh
wget -P ~/ https://raw.githubusercontent.com/user/repo/branch/nixta.sh

上記と同じ基本URLを持つ複数の端末を2つ以上ではない1行に統合するエレガントな方法はありますか?

擬似コード:

wget -P ~/ https://raw.githubusercontent.com/user/repo/branch/papj.sh||nixta.sh

答え1

複数のURLが一度に許可されるため、中wgetかっこ拡張を使用してこれを実行できますbash

wget -P ~/ https://raw.githubusercontent.com/user/repo/branch/{papj.sh,nixta.sh}

(でも

wget -P ~/ https://raw.githubusercontent.com/user/repo/branch/{papj,nixta}.sh

しかし、もちろん、これは非常に適切な名前でのみ機能します。

答え2

私はawkコマンドとforループを使ってこれをしました。気になる点や混乱した点があれば教えてください。

ファイルに次の内容を入れてexample.txtファイルを作成しました。

猫の例.txt

wget -P ~/ https://raw.githubusercontent.com/user/repo/branch/

変数iにpapj.sh nixta.shを割り当てました。

以下のスクリプトを使用して、要件に応じて実行します。

for i in papj.sh nixta.sh; do awk -v i="$i" '{print $0i}' example.txt; done

出力

wget -P ~/ https://raw.githubusercontent.com/user/repo/branch/papj.sh

wget -P ~/ https://raw.githubusercontent.com/user/repo/branch/nixta.sh

関連情報