そのため、YouTubeチャンネルの名前を入力してから5つの最新の動画を見つけることに関連するクイックシェルスクリプトを現在作成しているのに問題があります。
私はこの仕事のためにYouTubeのフロントエンド「vid.puffyan.us」を使用しています。
では、5つの動画をgrepingするときにサイトHTMLの方法で同じ動画IDが3回繰り返されますが、これをスキップして5つの異なるIDを出力する方法はありますか?
私の現在のコードは次のとおりです。
#!/bin/sh
query=$(printf '%s' "$*" | tr ' ' '+')
channel=$(curl -s "https://vid.puffyan.us/search?q=$query" | grep -Eo "channel/.{24}" | head -n 1)
if [ -z "$query" ]
then
echo "blank input!"
else
curl -s "https://vid.puffyan.us/$channel" | grep -Eo "watch\?v=.{11}" | head -n 5
fi
ベストアンサー1
簡単な修正は次のとおりです。mdmay74出力をパイプしuniq
て渡すだけですhead
。
例:
curl -s "https://vid.puffyan.us/$channel" | grep -Eo "watch\?v=.{11}" | uniq | head -n 5