You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
770 B
29 lines
770 B
8 months ago
|
#!/bin/bash
|
||
|
|
||
|
sanitize() {
|
||
|
local s="${1?need a string}" # receive input in first argument
|
||
|
s=$(echo $s | sed -E 's/^\s*.*:\/\///g')
|
||
|
s="${s//[^[:alnum:]]/-}" # replace all non-alnum characters to -
|
||
|
s="${s//+(-)/-}" # convert multiple - to single -
|
||
|
s="${s/#-}" # remove - from start
|
||
|
s="${s/%-}" # remove - from end
|
||
|
echo "${s,,}" # convert to lowercase
|
||
|
}
|
||
|
|
||
|
URL=$(awk '/^URL:/ {print $2}' signet)
|
||
|
URL_safe=$(sanitize $URL)
|
||
|
echo $URL_safe
|
||
|
curl $URL > "sac/pages/$URL_safe"
|
||
|
cat <<- EOF > BOOKMARKS
|
||
|
$(awk '/^[0-9]+$/ { print $0 + 1; exit }' BOOKMARKS)
|
||
|
Name: $(awk -v RS='</title>' '\
|
||
|
/<title>/ {gsub(/.*<title>/, ""); print}\
|
||
|
' sac/pages/$URL_safe | tr -d '\n')
|
||
|
$(cat signet BOOKMARKS)
|
||
|
EOF
|
||
|
|
||
|
#rm signet
|
||
|
|
||
|
|
||
|
|