Created
February 14, 2017 06:44
-
-
Save cumet04/ca3e00a845d7cd167a7b19b802691cb1 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
echo "Content-type: text/plain" | |
# echo "" # avahi-browseの出力になんか空行があるのでここを省略 | |
# query_paramのパース | |
get_query_string() { | |
saveIFS=$IFS | |
IFS='=&' | |
parm=($QUERY_STRING) | |
IFS=$saveIFS | |
for ((i=0; i<${#parm[@]}; i+=2)) | |
do | |
eval "$1[${parm[i]}]=${parm[i+1]}" | |
done | |
} | |
declare -A params | |
get_query_string params | |
# avahi-browseの実行 | |
if [ ${params[type]} ]; then | |
avahi-browse -prt ${params[type]} | grep IPv4 | cut -d ";" -f 7,8 | tr ';' '\t' | sort -u | |
elif [ ${params[name]} ]; then | |
avahi-browse -aprt | grep ${params[name]} | grep IPv4 | cut -d ";" -f 7,8 | tr ';' '\t' | sort -u | |
else | |
echo "" | |
cat << "EOS" | |
研究室ローカル / WiFi下のネットワーク(192.168.0.*, 192.168.111.*)でmDNSの検索ができるcgiです. | |
サービスタイプおよびホスト / サービス名で検索し,ホスト名とIPv4アドレスのペアを取得できます. | |
検索条件はクエリパラメータで指定します. | |
例: | |
IRKitを探す場合 ?type=_irkit._tcp | |
Raspiを探す場合 ?name=raspberrypi | |
typeとnameを両方指定した場合はtypeのみ認識されます. | |
EOS | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment