Может кто-нибудь направить меня для создания пользовательских команд в Unix / Linux.
Может кто-нибудь направить меня для создания пользовательских команд в Unix / Linux.
Ответы:
Создайте скрипт bash в папке / usr / bin, он должен выглядеть примерно так
#!/bin/bash
Whatever combination of commands you want to run when you type this thing.
Это действительно так просто.
Просто назовите скрипт bash, который вы хотите ввести в терминал, и сделайте его исключительным: chmod +x filename
и все готово !
./filename
Обновите переменную пути, чтобы включить этот каталог bin. Поместите это .profile
или .bash_profle
файл, чтобы сделать его постоянным.
export PATH=$PATH":$HOME/bin"
Создайте сценарий «hello» и сохраните его в каталоге bin. Дайте разрешение на выполнение сценарию приветствия $ chmod +x hello
.
#!/bin/bash
echo My first program
Перезагрузить .profile
или .bash_profle
:
$ . ~/.bash_profile
Из любого каталога вы просто набираете:
$ hello
My first program
bin
папку во многих ответах здесь. Есть ли проблема, если она .bin
вместо bin
? Я очень требователен к своей home
внешности и не хочу лишних папок только потому, что.
zsh
установкой что-то не так, или $PATH
все закончилось тем, что chmod -x hello
не работало, как и капитал -X
. Вместо этого я попытался chmod 755 hello
, хотя я не уверен в угрозах безопасности в отношении этой команды, она фактически позволила мне выполнить hello
. У кого-нибудь есть объяснение этому? Я предполагаю, что это проблема в отношении возраста?
chmod +x hello
для добавления прав доступа к сценарию. chmod -x hello
делает прямо противоположное - удаляет привилегии 'run'. (Обратите внимание на разницу в знаках плюс / минус в ответе и в вашем комментарии.)
Легко, создайте псевдоним.
Скажем, вы хотите написать команду для CD в ваш каталог загрузки. И ты хочешь назвать это кдд.
alias cdd='cd ~/Downloads'
Вы можете создать любую команду, какую захотите.
Вот дополнительная информация:
http://www.mediacollege.com/linux/command/alias.html
Большинство, если не все, дистрибутивов Linux имеют небольшой скрипт в ~ / .bashrc, который выглядит почти так же:
if [ -e ~/.bash_aliases ]
then
. ~/.bash_aliases
fi
Это просто означает, что вы можете создавать свои собственные команды (также известные как « aliases
», обычно называемые существующей командой с некоторыми аргументами, которые вы всегда должны использовать, или списком команд, которые должны выполняться по порядку).
В вашем дистрибутиве Linux, скорее всего, не будет файла .bash_aliases, созданного у вас дома, если вы уже не сделали этого вручную. Поэтому, чтобы создать файл, введите следующую команду:
touch ~/.bash_aliases
Теперь этот файл будет выполняться автоматически каждый раз, когда вы запускаете новый терминал.
Теперь вы можете создать список псевдонимов и добавить их в этот файл для последующего использования. Например, команда rm
(удалить) по умолчанию НЕ запрашивает подтверждение запроса, когда вы говорите об удалении файла / каталога. Однако, есть аргумент , который говорит , rm
чтобы попросить вас подтвердить ваш запрос, -i
. Таким образом, rm -i filePath
отобразится сообщение с вопросом, уверены ли вы, что хотите удалить указанный файл. Теперь, если вы случайно удалили файл, вы, скорее всего, забудете включить эту -i
опцию, и именно здесь она alias
становится очень полезной. Введите следующую команду
echo "alias rm='\rm -i'" >> ~/.bash_aliases
сообщит, Bash
что каждый раз, когда вы запрашиваете удаление файла, вам будет показано подтверждающее сообщение. Конечно, вы можете сделать гораздо больше - это только основы.
Если вы хотите узнать , как использовать некоторые основные команды (т.е. cd
, touch
, rm
, mkdir
, pushd
, popd
и т.д.) и / или более искушенные, я бы рекомендовал очень хорошую книгу вы можете иметь на книжной полке в виде ссылки под названием
практическое руководство по редакторам команд linux и программированию оболочки , написанное Марком Дж. Собеллом . ISBN: 978-0133085044