Хтось може мене направляти на створення спеціальних команд в 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
Оновіть змінну шляху, щоб включити цей каталог бін. Помістіть це у файл .profile
або .bash_profle
файл, щоб зробити його постійним.
export PATH=$PATH":$HOME/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
для додавання привілеїв 'run' до сценарію. 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