[Çözüldü] sh dosyası kısayol oluşturma

Başlatan ozgurche, 17 Eylül 2014 - 23:10:02

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

ozgurche

selamlar örneğin
home/ozgur/bin

yolu içinde oluşturduğumuz ozgur.sh dosyasını masaüstü sol tarafta kısayol nasıl oluşturabiliriz.?

Teşekkürler.

if

Şu[1] konuyu bir inceleyin. .desktop dosyası oluşturmanız gerek.

[1] https://forum.ubuntu-tr.net/index.php?topic=41289.0

ozgurche

#2
Verdiğiniz linkteki cevabınızı
gedit ~/.local/share/applications/minecraft.desktop
komutunu ben
gedit ~/.local/share/applications/nano.desktop

olarak değiştirdim. Sonra sizin verdiğiniz
[Desktop Entry]
Name=Minecraft
Comment=Minecraft
Type=Application
Categories=Games;
Exec=java -jar /home/dechros/Minecraft/minecraft-launcher-latest.jar
Icon=/nerede/bu/resim.png
Name[en_US]=Minecraft
Name[tr_TR]=Minecraft


kısmını
[Desktop Entry]
Name=deneme programı
Comment=program
Type=Application
Categories=program;
Exec=/home/compaq/bin/nano.sh
Icon=/home/compaq/Masaüstü/resim/penguen.png
Name[en_US]=deneme
Name[tr_TR]=deneme


olarak değiştirdim.
yine https://forum.ubuntu-tr.net/index.php?topic=37691.0   bölümünde bahsetmiş olduğunuz gibi
/home/compaq/.local/share/applications# chmod +x nano.desktop
şeklinde çalıştırma yetkisi verdim.

sonra dash kısmında deneme olarak arattım. program çıktı ve sol taraftaki yere sürükledim.
Buraya kadar tamam fakat program çalışmıyor. Normalde terminalden çalışıyor ama kısayoldan çalışmıyor.

if

Bash betiklerini çalıştırmanın temel iki yolu vardır. Birincisi betiğin bulunduğu dizinde: ./betiğin_ismi şeklindedir. Tabi farklı bir dizindeysek - misal /home/kullanıcı/Belgeler/betikler - o zaman verilecek komut /home/kullanıcı/Belgeler/betikler/./betiğin_adı şeklinde olur.

Diğer yol ise betiğin yazıldığı shell ile çalıştırmak: sh betiğin_adı gibi.

Şu durumda Exec=/home/compaq/bin/nano.sh satırı Exec=sh /home/compaq/bin/nano.sh olmalı.

ozgurche

dediğiniz gibi
/home/compaq/.local/share/applications# cat nano.desktop

komutunun çıktısı
[Desktop Entry]
Name=deneme programı
Comment=program
Type=Application
Categories=program;
Exec=sh /home/compaq/bin/nano.sh
Icon=/home/compaq/Masaüstü/resim/penguen.png
Name[en_US]=deneme
Name[tr_TR]=deneme

değiştirdim. Sonrasında eski ikonu sildim sonra tekrar dash'dan deneme diye arattım ve kısayol da yarattım ama yine çalışmadı.

if

Betiği çalıştırılabilir yaptınız mı? Ayrıca root ile işlem yapmayın. Gereken yerde sudo kullanın.

ozgurche

Çalıştırılabilirden anladığım komut doğru ise
~/.local/share/applications$ chmod +x nano.desktop

ile yaptım ve sudo kullanmadım ama çalışmıyor. Bir yerde sorun var galiba.

heartsmagic

Betiğin içeriği de önemli. Şöyle ki, kendisi eğer görsel bir uygulamayı açıyorsa sorun olmaz fakat uçbirime bağımlı bir şeyse ona göre ayar yapmak gerekir. Kısacası bir öykünücü (gnome-terminal gibi) üzerinden mi çalışıyor betik?
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

ozgurche

Evet arkadaşım dediğin gibi, ben deneme amaçlı bir betik yazmıştım içinde terminal de açılıyor kodları aşağıda.
#!/bin/sh

while :
do
clear
echo "başlık"
echo
echo "1. komut 1"
echo "2.komut 2"
echo "3.komut 3"
echo    "4. komut 4"
echo -n "lütfen bir senek giriniz [1-3]"
read opt
case $opt in
1) if zenity --calendar \
  --title="Takvim" \
  --text="Tarihi belirle." \
  --day=9 --month=1 --year=2010
  then echo $?
  else echo "Tarih seçilmedi."
  fi;;
2) gnome-terminal;;
3)     if zenity --entry \
  --title="Parola" \
  --text="Parola Gir:" \
  --entry-text "" \
  --hide-text
  then echo $?
  else echo "Parola girilmedi."
  fi;;

4)      exit;;
*) echo "$opt geçersiz seçenek, devam edin.."
read enterKey;;
esac
done



heartsmagic

Şöyle yapacaksın o zaman. Masaüstü dosyasındaki satırı şöyle yap:

Exec=gnome-terminal -x sh '/home/compaq/bin/nano.sh'

sh ile çağırmak zorunda değilsin. Çalıştırma izni verirsen doğrudan da çağırabilirsin. Önce:

chmod +x /home/compaq/bin/nano.sh

Sonra:
Exec=gnome-terminal -x '/home/compaq/bin/nano.sh'

Uzantı da şart değil, Linux tarafında öyle bir zorunluluk yok. Kısacası ismi nano bile olabilir.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

ozgurche

Exec kısmını dediğiniz gibi yapınca kısayolda çalıştı.
[Desktop Entry]
Name=deneme programı
Comment=program
Type=Application
Categories=program;
Exec=gnome-terminal -x sh '/home/compaq/bin/nano.sh'
Icon=/home/compaq/Masaüstü/resim/penguen.png
Name[en_US]=deneme
Name[tr_TR]=deneme


Çok çok teşekkür ederim üstat.

heartsmagic

Estağfurullah, etiket için de biz teşekkür ederiz.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.