Ubuntu Türkiye

Yazılım => Programlama => Kabuk (sh,bash,*csh,ksh,zsh) => Konuyu başlatan: fozaltun - 09 Mayıs 2019 - 23:25:48

Başlık: zenity: komut yok hatası
Gönderen: fozaltun - 09 Mayıs 2019 - 23:25:48
Kubuntu 18.04.2 kullanıyorum. Mouse scroll hızı için bir scrip kullanıyordum.(Ubuntu 18.10 kullanırken)
Şimdi açamıyorum. Bir hata veriyor.

Script
#!/bin/bash
# Version 0.1 Tuesday, 07 May 2013
# Comments and complaints http://www.nicknorton.net
# GUI for mouse wheel speed using imwheel in Gnome
# imwheel needs to be installed for this script to work
# sudo apt-get install imwheel
# Pretty much hard wired to only use a mouse with
# left, right and wheel in the middle.
# If you have a mouse with complications or special needs,
# use the command xev to find what your wheel does.
#
### see if imwheel config exists, if not create it ###
if [ ! -f ~/.imwheelrc ]
then

cat >~/.imwheelrc<<EOF
".*"
None,      Up,   Button4, 1
None,      Down, Button5, 1
Control_L, Up,   Control_L|Button4
Control_L, Down, Control_L|Button5
Shift_L,   Up,   Shift_L|Button4
Shift_L,   Down, Shift_L|Button5
EOF

fi
##########################################################

CURRENT_VALUE=$(awk -F 'Button4,' '{print $2}' ~/.imwheelrc)

NEW_VALUE=$(zenity --scale --window-icon=info --ok-label=Apply --title="Wheelies" --text "Mouse wheel speed:" --min-value=1 --max-value=100 --value="$CURRENT_VALUE" --step 1)

if [ "$NEW_VALUE" == "" ];
then exit 0
fi

sed -i "s/\($TARGET_KEY *Button4, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button4, and write new value.
sed -i "s/\($TARGET_KEY *Button5, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button5, and write new value.

cat ~/.imwheelrc
imwheel -kill


Hata
fatih@fubu:~$ chmod +x mousewheel.sh
fatih@fubu:~$ ./mousewheel.sh
./mousewheel.sh: satır 31: zenity: komut yok
fatih@fubu:~$ sh ./mousewheel.sh
./mousewheel.sh: 31: ./mousewheel.sh: zenity: not found
./mousewheel.sh: 33: [: unexpected operator
".*"
None,      Up,   Button4,
None,      Down, Button5,
Control_L, Up,   Control_L|Button4
Control_L, Down, Control_L|Button5
Shift_L,   Up,   Shift_L|Button4
Shift_L,   Down, Shift_L|Button5
INFO: imwheel started (pid=6429)
Başlık: Ynt: zenity: komut yok hatası
Gönderen: Empat - 09 Mayıs 2019 - 23:29:28
Merhaba.

Lütfen konu açarken konuyu, içeriğiyle ilgili bölüme açmaya özen gösterin.

Konu, Ubuntu Türkiye Forum > Yazılım  > Programlama > Kabuk (sh,bash,*csh,ksh,zsh) bölümüne taşınmıştır.

zenity adlı aracı yükleyerek sorunu çözebilirsiniz.

Bu aracı yüklemeniz için aşağıdaki komut yeterli olacaktır.
sudo apt install zenity
Başlık: Ynt: zenity: komut yok hatası
Gönderen: illedelinux - 10 Mayıs 2019 - 01:21:30
zenity paketini kurduktan sonra sorun devam ederse alttaki komutla dosyaya tam yetki verip öyle deneyin.
sudo chmod a+rwx  mousewheel.sh
Başlık: Ynt: zenity: komut yok hatası
Gönderen: Empat - 10 Mayıs 2019 - 20:28:06
Bu işlemlerle sorununuz, çok büyük olasılıkla çözülecektir.

Sorununuz çözüldüğünde, konu başlığınızı "[ÇÖZÜLDÜ]" olarak işaretleyin lütfen.

"[ÇÖZÜLDÜ]" işaretlemesini nasıl yapacağınızı bilmiyorsanız buraya (https://forum.ubuntu-tr.net/index.php?topic=31789.msg380776) tıklayarak, "[ÇÖZÜLDÜ]" olarak işaretlemeyi öğrenebileceğiniz makaleye gidebilirsiniz.
Başlık: Ynt: zenity: komut yok hatası
Gönderen: fozaltun - 11 Mayıs 2019 - 15:55:53
"zenity" terminalden yüklemiştim zaten.
sudo apt install zenity
[sudo] password for fatih:
Paket listeleri okunuyor... Bitti
Bağımlılık ağacı oluşturuluyor       
Durum bilgisi okunuyor... Bitti     
zenity zaten en yeni sürümde (3.28.1-1).
0 paket yükseltilecek, 0 yeni paket kurulacak, 0 paket kaldırılacak ve 0 paket yükseltilmeyecek.

sudo chmod a+rwx  mousewheel.sh
Bu kodu da denedim yine açılmadı.
Başlık: Ynt: zenity: komut yok hatası
Gönderen: illedelinux - 11 Mayıs 2019 - 16:22:44
Komutu dosya yolunu girerek denediniz mi?
Örneğin.
sudo chmod a+rwx /dosya/nerede/ise/mousewheel.sh 
Başlık: Ynt: zenity: komut yok hatası
Gönderen: fozaltun - 11 Mayıs 2019 - 17:06:40
Dosya yolunu da girdim. O şekilde yaptım.
Başlık: Ynt: zenity: komut yok hatası
Gönderen: illedelinux - 11 Mayıs 2019 - 17:19:37
Alıntı yapılan: fozaltun - 11 Mayıs 2019 - 17:06:40
Dosya yolunu da girdim. O şekilde yaptım.

Dosyanızda şöyle bir satır var.
imwheel started (pid=6429)

Buradaki pid no'su değişkenlik gösterebilir mi?
Bunu şöyle öğrenebiliriz, uçbirim ile imwheel dosyasını çalıştırın ve Sistem Monitor yazılımından pid no'suna bakın.
Başlık: Ynt: zenity: komut yok hatası
Gönderen: fozaltun - 11 Mayıs 2019 - 21:54:54
Uçbirimden çalıştırdım.
fatih@fubu:~$ sudo imwheel
[sudo] password for fatih:
INFO: imwheel started (pid=3087)


Sistem Monitörde de aynı pid kodu ile çalışıyor.


[eklenti yönetici tarafından silindi]
Başlık: Ynt: zenity: komut yok hatası
Gönderen: illedelinux - 11 Mayıs 2019 - 22:19:22
Alıntı yapılan: fozaltun - 11 Mayıs 2019 - 21:54:54
Uçbirimden çalıştırdım.
fatih@fubu:~$ sudo imwheel
[sudo] password for fatih:
INFO: imwheel started (pid=3087)


Sistem Monitörde de aynı pid kodu ile çalışıyor.

Bu sonuca göre çalışan imwheel pid'i ile dosyanızdaki pid birbirini tutmuyor ikisi aynı olması gerek, aynı olmazsa çalışacağını zanetmiyorum.
Zira bende de bazı dosyalar var pid aynı olmadığında çalışmıyor, bu yüzden dosyaları pid no'suna göre değil de farklı komut ile çalışmasını sağlıyorum.
Belki asıl sorun bu olmayabilir ama sonuçta birbiribini tutmaması bir sorundur.
Bir de kullandığın sistemde mouse için default başka ayar varsa o da engel olabilir.
Ayrıca şu ekran sorunu başlığı açan sizdiniz galiba, aklıma sanki KDE sizin makineye uygun değil gibi geliyor, tabi bunlar hep varsayım, denemek lazım.
Başlık: Ynt: zenity: komut yok hatası
Gönderen: fozaltun - 11 Mayıs 2019 - 22:38:09
[mention=646076]@illedelinux[/mention]
Script içinde bir pid değeri yazmıyor ama. imwheel her çalıştırdığımda farklı bir pid alıyor zaten.
Bahsettiğiniz diğer konuyu da ben açmıştım. KDE dışı masaüstlerinde de aynı sorunu yaşıyorum. Gnome, Cinnamon gibi.
Başlık: Ynt: zenity: komut yok hatası
Gönderen: Empat - 12 Mayıs 2019 - 03:25:09
Script'i aşağıdaki haliyle deneyebilir misiniz?

Çok küçük bir düzenleme yaptım.
#!/bin/bash
# Version 0.1 Tuesday, 07 May 2013
# Comments and complaints http://www.nicknorton.net
# GUI for mouse wheel speed using imwheel in Gnome
# imwheel needs to be installed for this script to work
# sudo apt-get install imwheel
# Pretty much hard wired to only use a mouse with
# left, right and wheel in the middle.
# If you have a mouse with complications or special needs,
# use the command xev to find what your wheel does.
#
### see if imwheel config exists, if not create it ###
if [ ! -f ~/.imwheelrc ]
then

cat >~/.imwheelrc<<EOF
".*"
None,      Up,   Button4, 1
None,      Down, Button5, 1
Control_L, Up,   Control_L|Button4
Control_L, Down, Control_L|Button5
Shift_L,   Up,   Shift_L|Button4
Shift_L,   Down, Shift_L|Button5
EOF

fi
##########################################################

CURRENT_VALUE=$(awk -F 'Button4,' '{print $2}' ~/.imwheelrc)

NEW_VALUE=$(zenity --scale --window-icon=info --ok-label=Apply --title="Wheelies" --text "Mouse wheel speed:" --min-value=1 --max-value=100 --value="$CURRENT_VALUE" --step 1)

if "$NEW_VALUE" == "";
then exit 0
fi

sed -i "s/\($TARGET_KEY *Button4, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button4, and write new value.
sed -i "s/\($TARGET_KEY *Button5, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button5, and write new value.

cat ~/.imwheelrc
Başlık: Ynt: zenity: komut yok hatası
Gönderen: fozaltun - 12 Mayıs 2019 - 17:46:57
Sizin düzenlediğiniz script de çalışmadı maalesef.Yni tıklayınca herhangi bir tepki vermiyor. (Çalıştırılabilir olarak düzenliyorum.)
Başlık: Ynt: zenity: komut yok hatası
Gönderen: Empat - 12 Mayıs 2019 - 17:53:32
[mention=646102]@fozaltun[/mention]

Orta düzey bash bilgisine sahip birkaç üyemiz var.

Onlar müsait olunca yardımcı olabilirler.

[mention=645734]@mimiksiz[/mention], [mention=644813]@programmer[/mention] konuyla ilgilenebilir misiniz?



Başlık: Ynt: zenity: komut yok hatası
Gönderen: if - 12 Mayıs 2019 - 22:24:12

bash -x mousewheel.sh

ne diyor?
Başlık: Ynt: zenity: komut yok hatası
Gönderen: fozaltun - 12 Mayıs 2019 - 22:43:14
Alıntı yapılan: if - 12 Mayıs 2019 - 22:24:12

bash -x mousewheel.sh

ne diyor?

fatih@fubu:~$ bash -x mousewheel.sh
+ '[' '!' -f /home/fatih/.imwheelrc ']'
++ awk -F Button4, '{print $2}' /home/fatih/.imwheelrc
+ CURRENT_VALUE='
'
++ zenity --scale --window-icon=info --ok-label=Apply --title=Wheelies --text 'Mouse wheel speed:' --min-value=1 --max-value=100 '--value=
' --step 1
This option is not available. Please see --help for all possible usages.
+ NEW_VALUE=
+ '[' '' == '' ']'
+ exit 0
Başlık: Ynt: zenity: komut yok hatası
Gönderen: mhmtkrktr - 06 Haziran 2019 - 22:28:06
CURRENT_VALUE=$(awk -F 'Button4,' '{print $2}' ~/.imwheelrc)
[[ $CURRENT_VALUE != *[0-9]* ]] && CURRENT_VALUE=1


İlk satırı betiğin içinde bul, hemen altına 2. satırı ekle. Birde bu şekilde dene.

zenity --scale komutu çağrıldığın da, --value değerinin girilmesi gerekir. Sende her nasılsa  CURRENT_VALUE değişkeni boş kalmış. imwheelrc dosyasını oluşturduktan sonra değiştirmişsindir belki. Dosyayı silip tekrar oluşturarak da deneyebilirsin.

rm ~/.imwheelrc
$ betik ..