Другим способом выполнения if; then; else; fi
вместе с find
является:
find |
while read p; do if [ -f "$p" ]; then echo file; else echo directory; fi; done
Файл ~/.bash_profile
будет использоваться оболочкой bash
, если она вызывается как оболочка входа в систему.
Если файл не существует, (он не должен существовать ), тогда он может быть создан пользователем.
Если оболочка не является bash
или если оболочка bash
не является оболочкой входа в систему (, например, если она используется для запуска сценария или запуска интерактивного входа без входа -сеанс оболочки ), то файл использоваться не будет.
Другие оболочки могут читать ~/.profile
для оболочек входа в систему, и bash
делает то же самое, если ~/.bash_profile
не существует.
Чтобы выяснить, какую оболочку вы используете для входа в систему,использовать
getent passwd username
где username
— ваше имя пользователя. Оболочка входа будет последним элементом с разделителем:
-в результирующей строке.
Пример:
$ getent passwd myself
myself:*:1000:1000:Kusalananda,,,:/home/myself:/usr/local/bin/zsh
Это означает, что моя оболочка входа — zsh
.
Обратите внимание, что выбранный вами дистрибутив Linux очень мало (ничего )не имеет )для того, используется ли ~/.bash_profile
или нет. Это зависит от вашего выбора оболочки входа в систему.