Tam yolu yazmadan program / kabuk betiğini çalıştırmanın bir yolu olup olmadığını bilmek isterim:
/opt/idea/bin/idea.sh
Tam yolu yazmadan program / kabuk betiğini çalıştırmanın bir yolu olup olmadığını bilmek isterim:
/opt/idea/bin/idea.sh
Yanıtlar:
Sadece sembolik link oluşturabilirsiniz . İçinde oluşturun /usr/local/bin. Tek ihtiyacınız olan komutu çalıştırmak:
sudo ln -s /full/path/to/your/file /usr/local/bin/name_of_new_command
Bundan sonra fileçalıştırılabilir yapmalısınız :
chmod +x /full/path/to/your/file
Artık name_of_new_commandterminalinizde istediğiniz zaman çalışabilmelisiniz .
Bunun yalnızca Linux'un ev kullanımı için iyi bir çözüm olduğunu unutmayın.
/usr/local/bin, özel bir giriş klasöründeki bir betiğe işaret eden bir bağlantı noktası yerleştirmemelisiniz. İşaret bağlantısı diğer kullanıcılar tarafından görülebilir, ancak işaret ettiği dosyada görünmez. Tek kullanıcılı bir sistemde bu önemli olmayabilir, ancak yine de, tüm kullanıcıların komut dosyalarını (veya komut dosyalarına bağlantıları) yerleştirebileceği ve özel, kendi kendine yazılan komut dosyalarına (veya komut dosyalarına bağlantıları) yerleştirmek "iyi bir uygulamadır" . kendi klasöründe tek bir kullanıcı . /home/jack/myscript.shjack/usr/local/bin~/bin
Ekleyebilir /opt/idea/binsizin için PATHdeğişken:
PATH=/opt/idea/bin:"$PATH"
Bundan sonra basitçe çalıştırabilirsiniz idea.sh.
Muhtemelen bu satırı ~/.bashrcdosyanıza eklemek istersiniz .
ideaişaret eden bir bağlantı veya diğer ad oluşturmanız gerekir idea.sh.
idea.shYazısı, senaryo değil, aslında kendi kurulum dir dışına hareket tamamen desteklenmez. Debian paketleme kuralları burada geçerli değildir.
Sizde bir işlev oluşturabilirsiniz ~/.bashrc:
some-name () {
/path/to/your/file
# or:
#cd /path/to/your
#./path
}
Veya şunları oluşturabilirsiniz alias:
alias some-name='/path/to/your/file'
# or
#alias some-name='cd /path/to/your/; ./file'
Her iki durumda da arayarak çalıştırabilirsiniz:
$ some-name
Dosya çalıştığı yere bağlı değilse, dosyaya eklemeyi düşünün ~/bin:
mkdir -p ~/bin
cp /path/to/you/file ~/bin
# or mv /path/to/you/file ~/bin
# or ln -s /path/to/you/file ~/bin
~/bin, varsa, $PATHotomatik olarak eklenir . Ardından doğrudan arayın file:
$ file
(Kötü ad seçimi olsa da, daha az genel bir şey demeyi düşünün.)
fileadresinden Müşteri ~/binBen genellikle (daha uzun komut dosyaları için) ne olduğu. Ben, mesela belirli parametreleri ile komutlara kısayollar için iyi ihtimalle bile üst :) Aliases o birini koymak olurdu alias l='ls -CF'. Yine de, takma adların daha harika kullanımlarını gördüm . İşlevleri açıklama eğiliminde değilim ~/.bashrc(Tüm komut dosyalarımın ayrı dosyalar halinde düzenlenmesini tercih ederim ~/bin). Bütün bunlar bir zevk meselesi olmasına rağmen, sanırım :)
cdçünkü senaryo çalışma dizinine bağlı olabilir. :) Aksi takdirde, evet, ~/binkendime dosya koyma eğilimindeyim .
Aşağıdaki komutu kullanarak başlatıcı oluşturabilirsiniz:
gnome-desktop-item-edit --create-new <path-where-to-save>. Bu pencereyi açmayacağım.

İstediğinizi adlandırın ve aşağıdaki komut kutusuna yazın
sh -c '/opt/idea/bin/idea.sh' ve kaydedin.
Şimdi bu dosyayı yeni oluşturulan başlatıcıyı kullanarak çalıştırabilirsiniz.
VEYA
Aşağıdaki içeriğe sahip bir .desktop dosyası oluşturabilirsiniz
[Desktop Entry]
Name=<whatever-you-want>
Exec=sh -c '/opt/idea/bin/idea.sh'
Terminal=false
Type=Application
Icon='<path to an icon file if you want>'
Şimdi .desktopherhangi bir yere uzatma ile kaydedin .
Bu komutla çalıştırılabilir yap chmod a+x <your-desktop-file>
Şimdi açmak için çift tıklayın.
Bunu bindçağırmak için komutu kullanarak bir işlev ve bir kısayol tuşu tanımlayabiliriz . ~/.bashrcDosyayı açın ve bu satırı ona ekleyin:
# define function that opens your program in working directory
Openprog(){
/your-Program/path/here
}
# bind hotkey to it (<F12>)
bind -x '"\e[24~":"Openprog"'
Şimdi tuşuna bastığınızda F12, programınız başlayacak.
Not: Çıkış kodunu belirlemenin hızlı bir yolu:
Terminalinizi açın ve Ctrl+ ' ya basın V. Şimdi en sevdiğiniz klavye kısayoluna basın. Doğru kaçış kodu görünmelidir. Sadece değiştirmeyi unutmayın ^[ile \e, örneğin değiştirmek için kısayol eklemeden önce ^[[24~sahip \e[24~.
/opt/idea/bin/idea.shDosyayı doğrudan kullanarak da çalıştırabiliriz.bash_aliases
Çalıştırarak ~/.bashrcdosyayı açın ,
gedit ~/.bashrc
Kaldır #, çizgiler öncesi ve çizgiler gibi görünecek şekilde, kaydetmek
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
Şimdi ~/.bash_aliasesdosyayı aç
gedit ~/.bash_aliases
Bu dosyaya aşağıdaki satırları ekleyin ve kaydedin,
alias idea='cd /opt/idea/bin && sudo ./idea.sh'
Sonunda ~/.bashrcdosyayı kaynak ,
source ~/.bashrc
Şimdi /opt/idea/bin/idea.shdosyayı doğrudan çalıştırabilirsiniz ,
idea
Diğer iyi cevaplara ek olarak, ~/.local/binbu dizini PATH'inize eklemeyi ve bu dizini PATH'inize eklemeyi düşünün ( .bashrcörneğin , içinden ). Bu yöntem özel izinler gerektirmez ( /usr/local/binörneğin, bağlantının aksine ). Bu şekilde, $ HOME'unuzu su basmadan standart bir dizin yapısına sahip olabilirsiniz. Bu konuda daha fazla bilgi için bu https://unix.stackexchange.com/ sorular:
Ya da sadece kullanabilirsiniz
nano ~/.bashrc
ve Ekle
PATH=/full/path/to/file:"$PATH"
Sonunda kaydedin ve çıkın. Daha sonra, sadece dosya adını yazabilirsiniz.
Buradaki ve diğer yerlerdeki tüm cevapları takip ettim ve çok az kişi komutun çalışması için LOG OUT'a ihtiyacınız olabileceğini söylemedi .
Sadece özellikle Xubuntu için , fakat diğer Debian / Ubuntu türevleri için özetlemek için bu basit talimatları yazdım.
(Aşağıdaki talimatlarda ~ / bin dizinini kullanıyoruz , çünkü bu otomatik olarak bu işletim sistemlerinin komutları aradığı bir yer. Buraya bakın :
# Open Terminal with Ctrl + Alt + T (or your system's own shortcut)
# You'll work in your home folder, no need to use sudo for any of this
cd # Go to home directory
mkdir -p bin # Create folder ~/bin if it doesn't exist
# Be careful not to type /bin, that's the bin folder in system root: /
sudo apt install nano # Skip this if you have Nano installed
nano bin/yournewcommand
# In Nano, type:
printf "Your new command works! \n" # \n means line break
# Ctrl+X To leave Nano
# Ctrl+Y To save the unsaved file
# Enter to confirm
chmod +x bin/yournewcommand
yournewcommand # If you just created the bin folder, this command might not yet work.
# You must now log out and log back in to make the bin folder noticed (I think)
yournewcommand # Now it works! (You can use Tab to autocomplete the command you're typing)
# If you add a second file/command, it should work without logging out (at least in my tests)