Исходный файл Сценария оболочки, не сохраненный

Я сохранил сценарий оболочки в мусорном ведре (созданный мной). Когда я запускаю программу, для предотвращения./для запущения скрипта я должен скопировать сценарий в один из каталогов, указанных переменной ПУТИ. Созданный каталог bin не находится в списке трактов. Так, для добавления к Списку трактов:

export PATH=~/bin:"$PATH"

Но этот каталог не становится сохраненным к Списку трактов. Когда я открываю новое окно терминала, я должен экспортировать его снова для запущения скрипта. Как я могу добавить его к Списку трактов постоянно? Также, если я пытаюсь переместиться, сценарий к существующему ПУТИ перечислил каталог, он говорит что ОТКЛОНЕННОЕ РАЗРЕШЕНИЕ. Я должен переместить его путем становления пользователем root?

2
задан 6 July 2016 в 21:29

5 ответов

Вы можете добавить export PATH=~/bin:"$PATH" в свой файл ~/.profile. Добавьте его внизу, сохраните и снова подключитесь к SSH.

В качестве альтернативы, если вы хотите, чтобы это изменение было общесистемным для любого пользователя, вы можете отредактировать путь в /etc/environment.

3
ответ дан 2 December 2019 в 01:36

Этот работал на меня.

Открывают Ваш .bashrc gedit ~/.bashrc

, текстовый редактор открыт.

if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

Вставка это и редактирование .bashrc. После закрытия текстового редактора, source ~/.bashrc

, Если Вы отклонили Разрешение, это означает, что сценарий не находится в формате исполняемых файлов. chmod 755 program_name Это должно сделать работу. Откройте новый Терминал, и он будет работать.

2
ответ дан 2 December 2019 в 01:36

Добавьте пользовательский домашний путь dir к $PATH

  1. , Редактирование Ваш ~/.profile
  2. Добавляет эту строку после всего связанного с $PATH Вара:

    export PATH="$PATH:$HOME/your-home-dir-path"

  3. Сохранили файл.

  4. Выходят из системы / Перезапуск.

Добавление этого к Вашему ~/.profile включают это изменение в терминале и текстовом режиме.

На всякий случай Ваш пользовательский путь ~/bin или ~/.local/bin!!!

Как уже упомянутый рассматриваемый комментарий, эти местоположения уже включены в ПУТЬ в Ubuntu!

Вы можете просто:

  1. Создают каталог (например, ~/bin).
  2. Копия Ваш сценарий к нему.
  3. Изменение его permitions, чтобы быть исполняемым файлом с командой:

    chmod +x ~/bin/script.sh

  4. Выход из системы / вход в систему. С другой стороны, можно выполниться source ~/.profile

1
ответ дан 2 December 2019 в 01:36

Как уже упомянуто, Ваш ~/.profile должен уже содержать что-то как следующее:

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

Однако это кажется, что Вы запускаетесь интерактивный невход в систему оболочка удара (т.е. Вы не соединяетесь по ssh, но запускаете терминал от настольной среды), который не читает ~/.profile, и вместо этого ~/.bashrc читается , как объяснено здесь .

можно изменить ~/.bashrc, чтобы добавить путь или считать ~/.profile для оболочек невхода в систему, как объяснено здесь , но поскольку Jacob упомянул, выходите ли Вы из системы/входите, это не требуется.

Для понимания различия между оболочкой входа в систему и невхода в систему посмотрите этот ответ .

1
ответ дан 2 December 2019 в 01:36

Когда Вы работаете

export PATH=~/bin:"$PATH"

, Вы устанавливаете переменную окружения PATH и экспортируете ее в рабочие родительские терминалы. Это похоже на высказывание "новой переменной ПУТИ, это, распространите слово". Это работает, но после того как Вы перезапускаете свой компьютер, ПУТЬ вернется к настроенному. Для внесения изменения постоянным необходимо будет отредактировать .profile файл на домашней папке. Это обычно имеет это:

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

, который включал бы папку $HOME/bin автоматически, если она существует. Но если это не делает можно просто добавить или команды выше, или:

    export PATH="$PATH:$HOME/bin"

в файл и эту папку будет включен в ПУТЬ на каждой сессии Вашего пользователя.

Вы должны базироваться полномочия записать в/usr/bin каталоге, но это не необходимо, если Вы изменяете .profile файл.

0
ответ дан 2 December 2019 в 01:36

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

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