以下の例のような URL のリストがあります。
/test/test
私も年を重ねてきました
[1999, 2000, 2001].
以下のように、年を挿入した URL のリストを印刷するタスクを自動化する方法を探しています。
/test/1999/test
/test/2000/test
/test/2001/test
これを自動化する必要はないのでsed
、、awk
または、python
すべて問題ありません。
答え1
「URL」を 1 つだけ指定すると、次の Python プログラムはそれらのリストをサポートします。
urls = [
'/test/test',
]
years = [1999, 2000, 2001]
for url in urls:
for year in years:
spliturl = url.split('/')
spliturl.insert(2, str(year))
print('/'.join(spliturl))
コツは、年を 2 番目の位置に挿入することです。 の最初の位置はspliturl
空の文字列 (つまり、最初の の前の文字列/
) です。
答え2
ここに一つのbash
解決策があります:
declare -a a=(1999 2000 2001)
url='/test/test'
for i in "${a[@]}" ; do echo "$url" | sed "s:/:/$i/:2"; done
答え3
どうですか
echo test/{1999,2000,2001}/test
あるいは
echo test/{1999..2001}/test