39 lines
1.3 KiB
Bash
Executable File
39 lines
1.3 KiB
Bash
Executable File
#!/bin/sh
|
|
filename=$2
|
|
|
|
while read line; do
|
|
if [[ $line == \[* ]]; then
|
|
link_name=$(echo "$line" | sed 's/\].*//' | sed -e 's/\[//g')
|
|
link=$(echo "$line" | sed 's/^[^(]*(//g' | sed -e 's/)//g')
|
|
file_type=$(echo "$link" | rev | cut -f1 -d"/" | rev)
|
|
if [[ $link == http://* ]] || [[ $link == https://* ]]; then
|
|
echo "[h|$link_name|URL:$link|server|port]"
|
|
elif [[ $link == gopher://* ]]; then
|
|
domain=$(echo $link | cut -f3 -d"/")
|
|
type=$(echo $link | cut -f4 -d"/")
|
|
link_dir=$(echo $link | cut -f5-20 -d"/")
|
|
if [[ $type != "" ]]; then
|
|
echo "[$type|$link_name|/$link_dir|$domain|port]"
|
|
else
|
|
echo "[1|$link_name|/$link_dir|$domain|port]"
|
|
fi
|
|
else
|
|
if [[ $link == *.png ]] || [[ $link == *.jpg ]]; then
|
|
echo "[I|$link_name|$link|server|port]"
|
|
elif [[ $link == *.gif ]]; then
|
|
echo "[g|$link_name|$link|server|port]"
|
|
elif [[ $link == *.gph ]] || [[ $link == *.cgi ]] || [[ $link == *.dcgi ]]; then
|
|
echo "[1|$link_name|$link|server|port]"
|
|
elif [[ $link == *.txt ]] || [[ $link == *.md ]]; then
|
|
echo "[0|$link_name|$link|server|port]"
|
|
elif [[ $link != *.* ]]; then
|
|
echo "[1|$link_name|$link|server|port]"
|
|
else
|
|
echo "[9|$link_name|$link|server|port]"
|
|
fi
|
|
fi
|
|
else
|
|
echo $line
|
|
fi
|
|
done <$filename
|