Перезагрузите файл ~ / .bash_profile из сценария оболочки

Я написал сценарий оболочки, который должен перезагрузить файл ~/.bash_profile , но он не работает. Вот код.

 echo 'export PATH=$PATH":$HOME/.bin"' >> ~/.profile mkdir ~/.bin cp passwrdgen ~/.bin chmod +x ~/.bin/passwrdgen . ~/.profile echo Done! 

  • Как правильно конкатенировать строки в скриптах shells?
  • Синтаксическая ошибка Bash, когда `cd`ing в каталог
  • Арифметические операции с expr и переменными
  • Как я могу вывести «временно» в оболочку, как это делает завершение вкладки zsh?
  • Как выйти из программы sh?
  • В чем разница между запуском «command &» и «command -D»
  • zsh: Повторять каждое утверждение?
  • Очистить старые строки приглашения в bash для сохранения пространства прокрутки
  • One Solution collect form web for “Перезагрузите файл ~ / .bash_profile из сценария оболочки”

    Как вы считаете, вы ожидаете, что PATH будет изменен вне подоболочки, в которой выполняется скрипт?

    Это не сработает. Когда вы экспортируете переменные, вы делаете это только для текущей оболочки .

    Ваш скрипт кажется прекрасным, попробуйте добавить строку, которая печатает PATH в нижней части экрана, чтобы убедиться:

     echo 'export PATH=$PATH":$HOME/.bin"' >> ~/.profile mkdir ~/.bin cp passwrdgen ~/.bin chmod +x ~/.bin/passwrdgen . ~/.profile echo "$PATH" echo Done! 
    Interesting Posts

    Ошибка при обновлении ubuntu (ошибки были обнаружены во время обработки)

    Как монтировать диск, зашифрованный cryptsetup (crypto_LUKS) в Ubuntu 14.04?

    Откуда появилась тема по умолчанию GTK2 (raleigh)?

    Неверное количество зарегистрированных пользователей с использованием «w»

    Является ли системный вызов единственным способом, который пользовательская программа может преднамеренно повлиять на состояние ядра Linux?

    Понимание следующей команды find

    Печать строк в файле из соответствия для соответствия

    LVM ест мое дисковое пространство или ложь?

    Рекомендации по ведению журналов ошибок (система, драйвер устройства и приложение)

    Не удается подключиться к модему 3g во время установки Arch

    Где хранятся мои электронные письма на CentOS 5.6

    Найти последнее появление строки в нескольких файлах

    Установка KolibriOS на флеш-накопителе с использованием GRUB2

    Ошибка: .onLoad failed в loadNamespace () для 'cairoDevice' на Linux-машине

    Является ';;' оператор цепочки в Unix? Как это работает?

    Linux и Unix - лучшая ОС в мире.