Как передать аргументы командной строки скрипту через Dash? (14.04)

Недавно я задал этот вопрос о добавлении сценария оболочки в Dash:

В 14.04 как запустить сценарий bash, который я написал, не открывая терминал?

Он работал отлично.

Последующий вопрос: как передать аргументы командной строки через Dash? Пример. В этом случае моя команда тире называется «Панель». Скрипт отображает мой экран с 8 терминалами. Вот пример использования:

panel             # Tile the screen with 8 terminal windows.
panel --left      # Tile the left side with 4 terminals
panel --right     # Tile the right side with 4 terminals

И так далее. Как передать аргументы типа --left или --right через Dash? В идеале я хотел бы иметь этот рабочий процесс:

Нажмите клавишу SUPER. Тип panel --left (например). Пунктир уходит, а левая сторона - панелями.

Сейчас он запускает правильный скрипт, но игнорирует --left.

Советы?

1
задан 13 April 2017 в 15:24

1 ответ

Из вашего первоначального вопроса, похоже, правильная вещь - переместить скрипт в ~/bin/, который должен быть по умолчанию в вашем $PATH. Если вы это сделаете, вы сможете снова запустить скрипт с помощью AltF2. Вы также сможете передавать ему аргументы, как в оболочке.

Вы также можете добавить любую другую папку, в которой вы держите свои скрипты в своем $PATH . Для этого откройте ~/.profile в текстовом редакторе по вашему выбору:

# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

В конце добавьте строку (заменив <folder> на вашу папку) и сохраните файл: [!d7 ]

PATH="<folder>:$PATH"

Например, я добавляю $HOME/.bin к моему $PATH, поэтому мои двоичные файлы не загромождают мою домашнюю папку, но вы можете добавить любую директорию на свой путь, просто не добавляйте ничего опасного (например, записывается в мир). Изменения вступят в силу при следующем входе в систему.

0
ответ дан 24 May 2018 в 02:32

Другие вопросы по тегам:

Похожие вопросы: