🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.os.linux
Article #907846

Re: ssh, mkdir i zmienne w skrypcie

#907846
From: marrgol
Date: Thu, 24 Oct 2024 10:56
32 lines
2573 bytes
On 2024-10-24 at 02:30 Marcin Debowski wrote:
> Przy okazji niezwiązane pytanie...
> 
> agatek@surfacego:~$ ZM1=~/foo echo $ZM1
> 
> Dlaczego w powyższym powłoka ignoruje przypisanie nowej wartości ZM1 a 
> jednoczesnie wykonuje polecenie po spacji? Jak dam średnik czy && po foo 
> to zmienia wartość jak sie mozna spodziewac, a bez tego nie.

Nie ignoruje, ta forma polecenia powoduje, że nowa wartość ZM1 będzie
dostępna tylko w środowisku polecenia po spacji, a nie w bieżącym:

$ ZM1=STARA
$ ZM1=~/foo echo $ZM1
STARA
$ ZM1=~/foo bash -c 'echo $ZM1'
/home/user/foo
$ ZM1=~/foo eval echo \$ZM1
/home/user/foo
$ echo $ZM1
STARA
$

W poleceniu 'ZM1=~/foo echo $ZM1' za $ZM1 shell podstawia znaną sobie starą
wartość ZM1 z bieżącego środowiska (albo pustą, jeśli ZM1 nie istnieje)
_zanim_ wykona całe polecenie.  Natomiast samodzielne przypisanie zmiennej
(w osobnej linii, oddzielone średnikiem, & itp. od innych poleceń) powoduje,
że nowa wartość ZM1 zostanie przypisana w bieżącym środowisku shella,
więc w następnych poleceniach interpreter podstawi tę nową wartość.

Jak chcesz zobaczyć co bash podstawia za zmienne, to po wpisaniu polecenia
zamiast je wykonywać wciśnij [Esc] [Ctrl-E] (albo [LeftAlt-Ctrl-E]).
Technical Details
Message-ID: <vfd94d$2iuhj$1@dont-email.me>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!feeder.erje.net!news.quux.org!eternal-september.org!feeder2.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
References: <vf5qru$104b1$1@dont-email.me> <vf6mr0$12k1i$1@dont-email.me> <d5254b1af5d5f6a28da5bcc2ef5875da506799d4@i2pn2.org> <vf80p2$1e0d2$1@dont-email.me> <bd466805-fb4a-4dca-a413-354b971319a0@hooterville.invalid> <vfbuku$28ohs$1@dont-email.me> <SygSO.105349$Xx4a.49690@fx11.ams1>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!feeder.erje.net!news.quux.org!eternal-september.org!feeder2.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: marrgol <marrgol@address.invalid>
Newsgroups: pl.comp.os.linux
Subject: Re: ssh, mkdir i zmienne w skrypcie
Date: Thu, 24 Oct 2024 12:56:13 +0200
Organization: A noiseless patient Spider
Lines: 34
Message-ID: <vfd94d$2iuhj$1@dont-email.me>
References: <vf5qru$104b1$1@dont-email.me> <vf6mr0$12k1i$1@dont-email.me> <d5254b1af5d5f6a28da5bcc2ef5875da506799d4@i2pn2.org> <vf80p2$1e0d2$1@dont-email.me> <bd466805-fb4a-4dca-a413-354b971319a0@hooterville.invalid> <vfbuku$28ohs$1@dont-email.me> <SygSO.105349$Xx4a.49690@fx11.ams1>
MIME-Version: 1.0
Injection-Date: Thu, 24 Oct 2024 12:56:13 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="34f2a00067fb9b9be8b3883cd6d691fa"; logging-data="2718259"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/sT/18yH81HnpjqHSuCyyC"
User-Agent: Mozilla/5.0 (rv:102.0) Gecko/20100101, Betterbird/102
Cancel-Lock: sha1:vI9CmOwglFGIj33B4cuflVR1vO0=
In-Reply-To: <SygSO.105349$Xx4a.49690@fx11.ams1>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit