На самом деле, то, что вы описываете, будет работать с несколькими примечаниями:
- Вы можете просто положить
docker container ls
в файл с именем /bin/dcls
. Но поведение этого может быть немного сложным. Чуть более надежно начинать файл со строки, называемой «шебанг», поэтому файл будет выглядеть так:#! / Bin / ш
док-контейнер ls
который указывает, что файл является сценарием оболочки.
- Прежде чем вы сможете запустить команду, вы должны сделать файл исполняемым с помощью команды, подобной
chmod + x / bin / dcls
Вы, вероятно, должны быть пользователем root, чтобы сделать это (то есть запустить его sudo
).
Выполните два вышеуказанных шага, и вы сможете печатать, dcls
и это будет делать docker container ls
. Но, если вы напечатаете dcls -l foo
, это все равно будет docker container ls
. Если вы хотите, чтобы это сделать docker container ls -l foo
, вы должны изменить сценарий, чтобы сказать
#! / Bin / ш
Док-контейнер ls "$ @"
который указывает, что любые аргументы, которые вы вводите в dcls
командной строке, должны передаваться docker container ls
команде.
Естественно, есть более сложные вещи, которые вы можете сделать с аргументами командной строки.
Для отображения одной простой команды → одной простой команды, которую не нужно передавать другим пользователям, проще определить псевдоним ( как предложил Фредди ) или функцию оболочки. Более сложные функции часто пишутся в виде скриптов; т.е. текстовые файлы, которые содержат команды. Но, если вам не нужно делиться им с другими пользователями, чаще используйте личный bin
каталог.
$ cd # (в ваш домашний каталог)
$ mkdir bin
Затем скопируйте
dcls
в
$HOME/bin
, и добавить
export PATH = "$ HOME / bin: $ PATH"
к вашему
~/.bashrc
.
Кроме того, принято ставить личные сценарии /usr/local/bin
и оставлять их /bin
для программ, поставляемых с системой.
/bin
, вы можете добавить в~/bin
(корзину в своем собственном каталоге) или в/usr/local/bin
(чтобы поделиться со всеми пользователями вашей системы, но не мешать работе менеджера пакетов). Или лучше в этом случае использовать псевдоним.