Я хотел бы знать, есть ли способ запустить сценарий программы / оболочки без ввода полного пути:
/opt/idea/bin/idea.sh
Вы можете просто создать символическую ссылку. Создайте его в /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.
В дополнение к другим хорошим ответам рассмотрим symlinking в ~/.local/bin и добавив этот каталог в ваш PATH (например, из вашего .bashrc). Этот метод не требует специальных разрешений (в отличие от symlinking к /usr/local/bin, например). Таким образом, у вас может быть стандартная структура каталогов, не наводняя ваш $ HOME. Подробнее об этом читайте на этих https://unix.stackexchange.com/ вопросах:
https://unix.stackexchange.com/questions/11544/what-is-the-difference-between-opt -and-usr-local https://unix.stackexchange.com/questions/36871/where-should-a-local-executable-be-placedВы можете создать пусковую установку, используя следующую команду:
gnome-desktop-item-edit --create-new <path-where-to-save>. Я буду открывать это окно.
Назовите его, как вам нравится, и в поле ввода команды введите
sh -c '/opt/idea/bin/idea.sh' и сохраните его.
Теперь вы можете запустить этот файл с помощью вновь созданного запуска
OR
Вы можете создать файл .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>'
Теперь сохраните
Сделать его исполняемым с помощью этой команды chmod a+x <your-desktop-file>
Теперь дважды щелкните, чтобы открыть его.
Создайте его софт-ссылку в каталоге /usr/bin:
ln -s /usr/bin/idea.sh /opt/idea/bin/idea.sh
Теперь запустите его, используя:
idea.sh
Или вы можете просто использовать
nano ~/.bashrc
и добавить
PATH=/full/path/to/file:"$PATH"
в конце, затем сохранить и выйти. Впоследствии вы можете просто ввести имя файла.
Вы можете создать функцию в своем ~/.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: [ ! d5] 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
(Плохой выбор имени, хотя, считайте его более универсальным.)
Вы можете добавить /opt/idea/bin к своей переменной PATH:
PATH=/opt/idea/bin:"$PATH"
После этого вы можете запустить ее просто idea.sh.
Возможно, вы захотите добавить этой строки в файле ~/.bashrc.
Мы также можем запустить файл /opt/idea/bin/idea.sh напрямую, используя bash_aliases
Откройте файл ~/.bashrc, запустив,
gedit ~/.bashrc
Удалите # перед строками и сохраните его, чтобы линии выглядели так:
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
Теперь откройте файл ~/.bash_aliases,
gedit ~/.bash_aliases
Добавьте следующие строки в этот файл и сохраните его, [ ! d4] alias idea='cd /opt/idea/bin && sudo ./idea.sh'
Наконец, исправьте файл ~/.bashrc,
source ~/.bashrc
Теперь вы можете запустить файл /opt/idea/bin/idea.sh напрямую,
idea
Вы можете просто создать символическую ссылку. Создайте его в /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.
В дополнение к другим хорошим ответам рассмотрим symlinking в ~/.local/bin и добавив этот каталог в ваш PATH (например, из вашего .bashrc). Этот метод не требует специальных разрешений (в отличие от symlinking к /usr/local/bin, например). Таким образом, у вас может быть стандартная структура каталогов, не наводняя ваш $ HOME. Подробнее об этом читайте на этих https://unix.stackexchange.com/ вопросах:
https://unix.stackexchange.com/questions/11544/what-is-the-difference-between-opt -and-usr-local https://unix.stackexchange.com/questions/36871/where-should-a-local-executable-be-placedВы можете создать пусковую установку, используя следующую команду:
gnome-desktop-item-edit --create-new <path-where-to-save>. Я буду открывать это окно.
Назовите его, как вам нравится, и в поле ввода команды введите
sh -c '/opt/idea/bin/idea.sh' и сохраните его.
Теперь вы можете запустить этот файл с помощью вновь созданного запуска
OR
Вы можете создать файл .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>'
Теперь сохраните
Сделать его исполняемым с помощью этой команды chmod a+x <your-desktop-file>
Теперь дважды щелкните, чтобы открыть его.
Создайте его софт-ссылку в каталоге /usr/bin:
ln -s /usr/bin/idea.sh /opt/idea/bin/idea.sh
Теперь запустите его, используя:
idea.sh
Или вы можете просто использовать
nano ~/.bashrc
и добавить
PATH=/full/path/to/file:"$PATH"
в конце, затем сохранить и выйти. Впоследствии вы можете просто ввести имя файла.
Вы можете создать функцию в своем ~/.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: [ ! d5] 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
(Плохой выбор имени, хотя, считайте его более универсальным.)
Вы можете добавить /opt/idea/bin к своей переменной PATH:
PATH=/opt/idea/bin:"$PATH"
После этого вы можете запустить ее просто idea.sh.
Возможно, вы захотите добавить этой строки в файле ~/.bashrc.
Мы также можем запустить файл /opt/idea/bin/idea.sh напрямую, используя bash_aliases
Откройте файл ~/.bashrc, запустив,
gedit ~/.bashrc
Удалите # перед строками и сохраните его, чтобы линии выглядели так:
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
Теперь откройте файл ~/.bash_aliases,
gedit ~/.bash_aliases
Добавьте следующие строки в этот файл и сохраните его, [ ! d4] alias idea='cd /opt/idea/bin && sudo ./idea.sh'
Наконец, исправьте файл ~/.bashrc,
source ~/.bashrc
Теперь вы можете запустить файл /opt/idea/bin/idea.sh напрямую,
idea
Или вы можете просто использовать
nano ~/.bashrc
и добавить
PATH=/full/path/to/file:"$PATH"
в конце его, а затем сохранить и выйти. Впоследствии вы можете просто ввести имя файла.
В дополнение к другим хорошим ответам, рассмотрим symlinking в ~/.local/bin
и добавив этот каталог в ваш PATH (например, из вашего .bashrc
). Этот метод не требует специальных разрешений (в отличие от symlinking к /usr/local/bin
, например). Таким образом, у вас может быть стандартная структура каталогов, не наводняя ваш $ HOME. Подробнее об этом читайте на этих https://unix.stackexchange.com/ вопросах:
Я следил за всеми ответами здесь и в других местах, и поэтому мало кто не упомянул, что вам может понадобиться LOG OUT для того, чтобы команда в конечном итоге работала.
blockquote>Просто чтобы повторить, особенно для Xubuntu, но для других вариантов Debian / Ubuntu я написал эти простые инструкции.
(в следующих инструкциях мы используем каталог ~ / bin, потому что это автоматически место, откуда эти ОС ищут команды См. здесь :
Неверные инструкции, чтобы заставить вашу команду работать:
# 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)