Question: I have two independently running scripts.
first one lets say script A calculates some values. And i want to echo these values from other script called B. These scripts will not call each other. I have used export keyword but didn't work. How can i do this?

Answer: 
If I understood the requirement then can't both scripts be simply executed in same sub shell, independently but **without** calling each other or without any need of an external file or pipe like this:

Let's say this is your **script1.sh**

```
#!/bin/bash
# script1.sh: do something and finally
export x=19

```

And here us your **script2.sh**

```
#!/bin/bash
# script2.sh: read value of $x here
echo "x="${x}

```

Just call them in same sub-shell like this

```
(. ./script1.sh && ./script2.sh)

```

**OUTPUT:**

```
x=19

```
```
 mkfifo /tmp/channel

 process_a.sh > /tmp/channel&
 process_b.sh < /tmp/channel&

 wait

```

Of course you can also just read a single line when you want it.

In bash there are coprocs, which also might be what you want. Random example from [this page](http://wiki.bash-hackers.org/syntax/keywords/coproc)

```
# let the output of the coprocess go to stdout
{ coproc mycoproc { awk '{print "foo" $0;fflush()}' ;} >&3 ;} 3>&1
echo bar >&${mycoproc[1]}
foobar

```

ksh has a similar feature, apparently