Страница 1 из 1

Добавить переменные к окружению

Добавлено: 2007-02-12 15:51:01
Urgor
Есть скрипт, который должен добавлять переменные к переменным, но почему-то не добавляет.... Вопрос: как это сделать правильно?
Вот сам скрипт:

Код: Выделить всё

#!/bin/sh
# easy-rsa parameter settings

# NOTE: If you installed from an RPM,
# don't edit this file in place in
# /usr/share/openvpn/easy-rsa --
# instead, you should copy the whole
# easy-rsa directory to another location
# (such as /etc/openvpn) so that your
# edits will not be wiped out by a future
# OpenVPN package upgrade.

# This variable should point to
# the top level of the easy-rsa
# tree.
D="/etc/openvpn/keys"

# This variable should point to
# the openssl.cnf file included
# with easy-rsa.
export KEY_CONFIG=$D/openssl.cnf

# Edit this variable to point to
# your soon-to-be-created key
# directory.
#
# WARNING: clean-all will do
# a rm -rf on this directory
# so make sure you define
# it correctly!
export KEY_DIR=$D/keys

# Issue rm -rf warning
echo NOTE: when you run ./clean-all, I will be doing a rm -rf on $KEY_DIR

# Increase this to 2048 if you
# are paranoid.  This will slow
# down TLS negotiation performance
# as well as the one-time DH parms
# generation process.
export KEY_SIZE=1024

# These are the default values for fields
# which will be placed in the certificate.
# Don't leave any of these fields blank.
export KEY_COUNTRY=KG
export KEY_PROVINCE=NA
export KEY_CITY=BISHKEK
export KEY_ORG="OpenVPN-TEST"
export KEY_EMAIL="me@myhost.mydomain"

Добавлено: 2007-02-12 16:32:23
votuanr
вроде set было, иль нет?

Добавлено: 2007-02-12 16:34:22
serge
setenv

Добавлено: 2007-02-12 18:00:24
baklan
От оболочки зависит синтаксис. Так как написано, насколько помню в bash. Т.о. просто выполнить скрипт из под bash . В csh надо setenv и экспорт не нужен.

Добавлено: 2007-02-13 15:38:02
bakake
baklan писал(а):От оболочки зависит синтаксис. Так как написано, насколько помню в bash. Т.о. просто выполнить скрипт из под bash . В csh надо setenv и экспорт не нужен.
Угу, причем в линухе в общем случае такое будет работать, потому как там /bin/sh обычно симлинк на /bin/bash. А вот во freebsd такое не прокатит. Работать будет если
вариант 1)
поменять синтаксис с
export KEY_COUNTRY=KG
export KEY_PROVINCE=NA
....

на

KEY_COUNTRY=KG ; export KEY_COUNTRY
KEY_PROVINCE=NA ; export KEY_PROVINCE
....

либо на

KEY_COUNTRY=KG
KEY_PROVINCE=NA
...
export KEY_COUNTRY KEY_PROVINCE ...

вариант 2)
поставить в систему bash и поменять первую строчку с
#!/bin/sh
на
#!/usr/local/bin/bash