Как запускать скрипты без ввода полного пути?

39

Я хотел бы знать, есть ли способ запустить сценарий программы / оболочки без ввода полного пути:

/opt/idea/bin/idea.sh
    
задан Poorman_Patrick 01.03.2014 в 08:05
источник

8 ответов

47

Вы можете просто создать символическую ссылку . Создайте его в /usr/local/bin . Все, что вам нужно, это запустить команду:

sudo ln -s /full/path/to/your/file /usr/local/bin/name_of_new_command

После этого вы должны выполнить свой исполняемый файл file :

chmod +x /full/path/to/your/file

Теперь вы можете запустить name_of_new_command в любое время в своем терминале.

Обратите внимание, что это хорошее решение только для домашнего использования Linux.

    
ответ дан c0rp 22.09.2014 в 10:43
21

Вы можете добавить /opt/idea/bin к переменной PATH :

PATH=/opt/idea/bin:"$PATH"

После этого вы можете запустить его с помощью только idea.sh .

Вероятно, вы захотите добавить эту строку в файл ~/.bashrc .

    
ответ дан janos 01.03.2014 в 08:16
14

Вы можете создать функцию в ~/.bashrc :

some-name () {
    /path/to/your/file
    # or:
    #cd /path/to/your
    #./path
}

Или вы можете создать alias :

alias some-name='/path/to/your/file'
# or  
#alias some-name='cd /path/to/your/; ./file'

В обоих случаях вы можете запустить его, вызвав:

$ some-name

Если файл не зависит от того, где он запущен, подумайте о его добавлении к своему ~/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 , если он существует, автоматически добавляется в ваш $PATH . Затем вы вызываете file :

$ file

(Плохой выбор имени, хотя, считайте его более универсальным.)

    
ответ дан muru 22.09.2014 в 10:34
10

Вы можете создать пусковую установку, используя следующую команду:

gnome-desktop-item-edit --create-new <path-where-to-save> . I t откроет это окно.

Назовите его, как вам нравится, и в поле командной строки введите

sh -c '/opt/idea/bin/idea.sh' и сохраните его.

Теперь вы можете запустить этот файл с помощью вновь созданной пусковой установки

ИЛИ

Вы можете создать файл .desktop со следующим содержимым

[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>'

Теперь сохраните его с расширением .desktop в любом месте.

Сделать его исполняемым с помощью этой команды chmod a+x <your-desktop-file>

Теперь дважды щелкните, чтобы открыть его.

    
ответ дан g_p 01.03.2014 в 08:33
7

Мы можем определить функцию и добавить горячую клавишу, используя команду bind для ее вызова. Откройте файл ~/.bashrc и добавьте в него следующие строки:

# define function that opens your program in working directory
Openprog(){
    /your-Program/path/here
}

# bind hotkey to it (<F12>)
bind -x '"\e[24~":"Openprog"'

Теперь, когда вы нажимаете F12 , ваша программа запустится.

Примечание: Быстрый способ определения кода эвакуации:

Откройте терминал и нажмите Ctrl + V . Теперь нажмите свою любимую комбинацию клавиш. Должен появиться правильный код выхода. Обязательно замените ^[ \e перед добавлением ярлыка к, например. замените ^[[24~ на \e[24~ .

    
ответ дан αғsнιη 22.09.2014 в 10:37
7

Мы также можем напрямую запустить файл /opt/idea/bin/idea.sh , используя bash_aliases

Откройте файл ~/.bashrc , запустив

gedit ~/.bashrc

Удалите # перед строками и сохраните его, чтобы линии выглядели,

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

Теперь откройте файл ~/.bash_aliases ,

gedit ~/.bash_aliases

Добавьте ниже указанные строки в этот файл и сохраните его,

alias idea='cd /opt/idea/bin && sudo ./idea.sh'

Наконец, введите файл ~/.bashrc ,

source ~/.bashrc

Теперь вы можете запустить файл /opt/idea/bin/idea.sh напрямую,

idea
    
ответ дан Avinash Raj 01.03.2014 в 10:12
4

В дополнение к другим хорошим ответам, рассмотрите symlinking в ~/.local/bin и добавьте этот каталог в свой PATH (например, из вашего .bashrc ). Этот метод не требует специальных разрешений (в отличие от symlinking на /usr/local/bin , например). Таким образом, у вас может быть стандартная структура каталогов, не наводняя ваш $ HOME. Подробнее об этом на ссылке :

ответ дан abstrus 04.08.2015 в 05:48
1

Создайте мягкую ссылку в /usr/bin direcotyr:

ln -s /usr/bin/idea.sh  /opt/idea/bin/idea.sh

Теперь запустите его, используя:

idea.sh
    
ответ дан J.Franks 02.12.2016 в 22:44