| delorie.com/archives/browse.cgi | search |
| X-Recipient: | archive-cygwin AT delorie DOT com |
| X-SWARE-Spam-Status: | No, hits=-0.3 required=5.0 tests=AWL,BAYES_50 |
| X-Spam-Check-By: | sourceware.org |
| Date: | Sun, 21 Dec 2008 18:06:21 +0200 |
| Message-Id: | <200812211606.mBLG6LX2014401@beta.mvs.co.il> |
| From: | "Ehud Karni" <ehud AT unix DOT mvs DOT co DOT il> |
| To: | ebb9 AT byu DOT net |
| Cc: | cygwin AT cygwin DOT com, steve DOT rainbird AT mssint DOT com |
| Subject: | Re: Unusual environemtal variables |
| In-reply-to: | <494BA56A.7070009@byu.net> (message from Eric Blake on Fri, 19 Dec 2008 06:45:14 -0700) |
| Reply-to: | ehud AT unix DOT mvs DOT co DOT il |
| References: | <gifp4m$u1t$1 AT ger DOT gmane DOT org> <494BA56A DOT 7070009 AT byu DOT net> |
| MIME-Version: | 1.0 |
| X-IsSubscribed: | yes |
| Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
| List-Id: | <cygwin.cygwin.com> |
| List-Unsubscribe: | <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com> |
| List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
| List-Archive: | <http://sourceware.org/ml/cygwin/> |
| List-Post: | <mailto:cygwin AT cygwin DOT com> |
| List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
| Sender: | cygwin-owner AT cygwin DOT com |
| Mail-Followup-To: | cygwin AT cygwin DOT com |
| Delivered-To: | mailing list cygwin AT cygwin DOT com |
On Fri, 19 Dec 2008 06:45:14 -0700, Eric Blake <ebb9 AT byu DOT net> wrote:
>
> According to Steve Rainbird on 12/19/2008 2:22 AM:
> SR:> When i run a Fuijitsu Cobol program it requires environmental variables
> SR:> starting with the @ sign.
>
> That is inherently non-portable. POSIX states that "Other characters may
> be permitted by an implementation; applications shall tolerate the
> presence of such names," but does not require applications to be able to
> create such names.
>
> http://www.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08
>
> SR:>
> SR:> Is there any way around this?
>
> You'll have to set it in Windows, prior to starting bash, as there is no
> way to make bash create variables not starting with something from the
> portable set [_a-zA-Z].
This behavior (accepting names of only ASCII Alpha and _) is a bash self
imposed limitation. If you use csh (or tcsh) names with other characters
are supported too.
So you can use csh's: setenv "@FOO" "value".
You can also use the env command to bypass bash limitation like this:
exec env "@FOO=bar" exec /bin/bash -i
Note the 2 `exec' if you do not want to spawn more processes.
Ehud.
--
Ehud Karni Tel: +972-3-7966-561 /"\
Mivtach - Simon Fax: +972-3-7966-667 \ / ASCII Ribbon Campaign
Insurance agencies (USA) voice mail and X Against HTML Mail
http://www.mvs.co.il FAX: 1-815-5509341 / \
GnuPG: 98EA398D <http://www.keyserver.net/> Better Safe Than Sorry
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |