我们如何将一个变量从一个shell更新到另一个shell?是否可以将一个变量从一个shell更新到另一个shell?
假设我打开了2个Putty会话,我想在第一个SHELL中设置一个变量,并且需要从第二个SHELL访问该变量。
可以吗?
我们如何将一个变量从一个shell更新到另一个shell?是否可以将一个变量从一个shell更新到另一个shell?
假设我打开了2个Putty会话,我想在第一个SHELL中设置一个变量,并且需要从第二个SHELL访问该变量。
可以吗?
由于每个进程的环境得到保护,没有办法共享环境变量。我建议在共享文件系统上使用一个文件来存储你想要的变量,并在需要知道新值的时候读取该文件。
您可以将变量保存到脚本中。 然后在第二个会话中输入脚本。
例如:
# session 1
hello=world
echo "hello=$hello" > /tmp/var.sh
# session 2
. /tmp/var.sh
echo $hello
这通常是不可能的,因为每个shell(和每个进程)都有自己的环境。见execve(2)。
但是,您可能想切换到fish
shell。它为您提供所谓的universal variables,它可以在几个(即运行进程)fish
shell实例之间共享。这是通过用户守护程序(每个fish
进程都与之通信)实现的。
不,这是不可能的,但如果你告诉我们你想做什么,那么我们可能会建议你选择。 – anubhava
只是想知道可能性.... – user3103694