LINUX.ORG.RU

Парочка вопросов (bash & time)


0

0

Пара вопросов знатокам. 1. По bash Как передать от дочернего процесса родительскому переменную. Первое, что приходит в голову типа из дочернего $ echo $myvar > /tmp/myvar.tmp из родительского $ mayvar=`cat /tmp/myvar.tmp` $ rm /tmp/myvar.tmp Слишком много телодвижений! Должно, просто обязано быть проще решение! Какое?

2. Как командой time замерить время выполнения нескольких команд(скриптов) - результат скинуть в файл?

anonymous

$myvar -- это все, что надо передать от потомка родителю?

myvar=`child`

#---------------child---------
echo "$myvar"

sdio ★★★★★
()

Ничего не понял
Может я неправильно объяснил, что мне нужно?
$ cat 1.sh
============
#!/bin/bash
myvar1=1myvar1
./2.sh
echo $myvar1
echo $myvar2
mmm=`echo $myvar2`
echo $mmm
echo "$myvar2"
=============
$ cat 2.sh
=============
myvar2=2myvar2
=============
$ ./1.sh
1myvar1
Все!
Я же хочу увидеть myvar2

anonymous
()
Ответ на: комментарий от sdio

<оффтоп>

2 sdio

Можно с тобой связаться как нибудь?

kilolife at jabber dot ru

318405879

kilolife at gmail dot com

</оффтоп>

kilolife ★★★★★
()
Ответ на: комментарий от anonymous

Отвечаю на второй вопрос.

Встоенная в bash команда time для этого не годиться. Нужно использовать:

/usr/bin/time -o outfile sh -c 'command1; command2; command3'

Т.е. время выполнения будет "грязным", за счет sh

kosmonavt
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.