特定のユーザー名を見つけるために、以下のURLからいくつかのログを収集しようとしています。しかし、何の結果も得られず、実行を続けます。
grepfor="username"
urls=("https://tgstation13.org/parsed-logs/terry/data/logs/2019/01")
while [ ${#urls[@]} -ne 0 ]
do
content="$(curl -s "$url[0]")"
echo "$content" | grep "$grepfor"
delete=($urls[0])
add=(`echo "$content" | grep -Po '(?<=href=")[^"]*'`)
urls=( "${urls[@]/$delete}" "{$add[@]}" )
done
答え1
代わりに、配列"${urls[0]}"
の最初の要素について。urls
$urls[0]
配列の最初の要素を削除しurls
てadd
配列を最後に追加するには、次のようにします。
urls=( "${urls[@]:1}" "${add[@]}" )
常にすべての拡張子を引用してください${#urls[@]}
。でも。
私はあなたのcursとgrepを詳しく見ていませんが、
printf '%s\n' "$content"
バックスラッシュをデータに保存したい場合。
関連: