Tüm Bluetooth aygıtlarını sistemimden kaldırmak için basit bir bash komut dosyası oluşturuyorum. Ne yapar, bluetooth cihazları listelemek için bt-device -l
kullanın, sonra parens arasında MAC adresini kapar, daha sonra cihazı kaldırmak için bt-device -r <MACAddress>
çağrıları. Bash betiklerinde o kadar da iyi değilim ama bt-cihaz çağrısını eko ile değiştirdiğimde doğru çıktıyı elde ediyorum. Komutu tekrar yerleştirdiğimde, cihazın bulunamadığı yazıyor. Eğer çağrıyı el ile yaparsam çalışır (çıkışlar "Tamamlandı").Bash komut dosyası echos ama yürütmeyecek
Numune bt-device -l
komutunun çıkışı:
Added Devices:
Samico BP (12:34:56:78:9a:bc)
SensorTag 2.0 (12:34:56:78:9a:bd)
Ve betik kullandığım:
#!/usr/bin/env bash
bt-device -l | sed 1d |
while read x; do
bt-device -r $x | cut -d "(" -f2 | cut -d ")" -f1
done
bunu çalıştırın, bt-device -r
komutu çalıştırır ama çıkış Error: Device not found
olduğu gibi MAC adresini yanlış yazmıştım. echo
ile betikteki bt-device
aramasını değiştirirseniz, MAC adreslerinin beklenen şekilde listesini alırım.
Sen $x
Kullanmadan önce işlemek isterdim
#!/usr/bin/env bash
bt-device -l | sed 1d |
while read x; do
bt-device -r $(echo $x | cut -d "(" -f2 | cut -d ")" -f1)
done
'' 'Done''' listede bulduğu her bluetooth cihaz için. –