The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Как сменить значение переменной в subshell?"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Как сменить значение переменной в subshell?" 
Сообщение от micis emailИскать по авторуВ закладки on 02-Апр-05, 11:27  (MSK)
Вот пример:
============================
#!/bin/sh

V="--"

echo "line1" |
while read line
do
  V=$line
  export V
done

echo "V=$V"
================================
как правильно изменить переменную V в цикле, что бы и после него значение переменной V сохранилось, т.е. в итоге напечаталось "V=line1", а не "V=--"?

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Как сменить значение переменной в subshell?" 
Сообщение от ACCA Искать по авторуВ закладки(ok) on 05-Апр-05, 03:32  (MSK)
>как правильно изменить переменную V в цикле, что бы и после него
>значение переменной V сохранилось, т.е. в итоге напечаталось "V=line1", а

Никак. Потомок не может изменить переменную родителя.

Твой пример можно выполнить так, чтобы не использовать subshell:

TMP=/tmp/$$.tmp
V='--'
echo line1 > $TMP

while read V
do
   echo $V
done < $TMP

rm $TMP

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Как сменить значение переменной в subshell?" 
Сообщение от anon Искать по авторуВ закладки on 06-Апр-05, 15:49  (MSK)

>TMP=/tmp/$$.tmp

зачем плохому учишь?
man mktemp !!!

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру