Terminalden IP öğrenme ve IP adresi sorgulamak (x IP kullanılıyor mu, hangi ülke tarafından kullanıyor vs.) için yazılmış basit bir bash kodudur. Curl ile web servis kullanımını bash ile harmanlar. Can sıkıntısı ürünüdür.
Özetle: Atla deve değildir.
Dosya içeriği:
#!/bin/bashGETGEOIPCONTEXT="http://www.webservicex.net/geoipservice.asmx/GetGeoIPContext"GETGEOIP="http://www.webservicex.net/geoipservice.asmx/GetGeoIP"get_ip() { curl -H "Accept: application/soap+xml" -d "IPAddress=$1" ${GETGEOIP}}my_ip() { curl -H "Accept: application/soap+xml" -d "IPAddress=$1" ${GETGEOIPCONTEXT}}$@
Terminal’de kullanım:
$ geoip my_ip# Ekran... read more
SOAP Web Servis ile CURL Kullanımını Bash ile Harmanlama
Terminalden IP öğrenme ve IP adresi sorgulamak (x IP kullanılıyor mu, hangi ülke tarafından kullanıyor vs.) için yazılmış basit bir bash kodudur. Curl ile web servis kullanımını bash ile harmanlar. Can sıkıntısı ürünüdür.
Özetle: Atla deve değildir.
Dosya içeriği:
#!/bin/bash
GETGEOIPCONTEXT="http://www.webservicex.net/geoipservice.asmx/GetGeoIPContext"
GETGEOIP="http://www.webservicex.net/geoipservice.asmx/GetGeoIP"
get_ip() {
curl -H "Accept: application/soap+xml" -d "IPAddress=$1" ${GETGEOIP}
}
my_ip() {
curl -H "Accept: application/soap+xml" -d "IPAddress=$1" ${GETGEOIPCONTEXT}
}
$@
Terminal’de kullanım:
$ geoip my_ip
# Ekran çıktısı
<ReturnCode>1</ReturnCode>
<IP>193.xxx.xx.xx</IP>
<ReturnCodeDetails>Success</ReturnCodeDetails>
<CountryName>Turkey</CountryName>
<CountryCode>TUR</CountryCode>
$ geoip get_ip 195.xxx.xx.xx
# Ekran çıktısı
<ReturnCode>1</ReturnCode>
<IP>195.xxx.xx.xx</IP>
<ReturnCodeDetails>Success</ReturnCodeDetails>
<CountryName>Germany</CountryName>
<CountryCode>DEU</CountryCode>
Yazdığımız bash kodunu konsoldan çalışır duruma getirme işine bakalım:
$chmod 755 geoip
Artık kodun bulunduğu dizinde şu şekilde çalıştırabiliriz.
$./geoip my_ip
Sadece dosya ismiyle çalıştırmak istiyorum. Bundan dolayı sudo ile mc (Midnight Commander) aracılığıyla bash script’i /bin dizinine attım. Aynı işlemi yapabileceğimiz bir çok yol elbette mevcut.
Misal:
# Taşımak için
$ sudo mv path/geoip bin
# Kopyalamak için
$ sudo cp path/geoip bin
[Terminal’de kullanım] kısmında gözüktüğü gibi kodumuz çalışır hale gelecektir.