首页 > 编程知识 正文

export命令提示符(default)

时间:2023-05-04 07:22:20 阅读:64612 作者:3957

基础命令学习目录主页

导出的基本作用是将父shell中的局部变量设置为环境变量,以便该变量可用于子shell。 设置以下两种方案进行导出原理分析: 情景

有一个名为myexport.sh的脚本。 内容如下。 #! /rdmj/sh

在export my _ path=/usr/local 12 Linux环境中打开终端并运行此shell $ shmyexport.sh

$echo $MY_PATH

$123运行此shell后,终端无法看到此环境变量的值。

-一个终端在export中设置环境变量后,其他终端不可见。 原因

首先提到进程,进程是一个正在运行的程序,是代码的动态形式,进程具有以下属性:

独立的内核堆栈

过程控制块

独立的存储空间

每个进程都有独立的存储空间,因此看不到进程之间的数据,进程之间的交互需要进程间通信。 由于每个shell都是独立的进程,因此一个进程中的操作通常不会影响另一个进程的内容,也不会显示为另一个进程。 因此,在上面的第二种情况下,不同的终端打开了不同的外壳。 这些终端是相互独立的过程,无论如何设置环境变量,它们都是相互不可见的。 写入系统配置文件的环境变量,那就是通信。 ) export命令用于全球化父shell的局部变量。 这种全球化意味着可以看到子外壳。 在父shell上运行子shell时,将启动一个运行——的新子进程,因此子shell是独立于父shell的进程,父shell的存储空间彼此不可见。 也就是说,子shell看不到父shell中的变量。 要使子shell显示父shell变量,必须将该变量从父shell的独立存储区域复制到子shell的独立存储区域。 子shell中显示的变量实际上是自己进程区域的内容,而不是父进程的内容。 但是,此另一个区域中的变量的名称和值相同。 因此,导出不采用高级技术,只是将父进程空间的内容复制到子进程中。 Linux上的父子进程是指父进程可以管理子进程。 这种管理主要体现在生、管、死三个方面。 这意味着父进程可以创建子进程。 可以将上面的导出示例视为管理之一。 如果父进程死,则子进程必须死,而子进程死不影响父进程。 其实除了生死,亲子过程都是独立的过程。 父进程可以创建子进程,但为什么不称为父进程呢? 英语是parent process,不是father process。 这涉及历史和文化问题,所以不讨论。 )的结果

那么,如何将方案1中myexport.sh的环境变量导入到当前进程中? 首先,父进程可以将自己的环境变量写入子进程的空间,但子进程不能将自己空间中的数据写入父进程(至少不能使用导出命令)。 要使子shell中的变量显示在父shell中,最好的方法是不成为子shell,也就是说,只将该shell的内容导入到“父”shell中,而不运行该shell。 以这种方式使用的导入命令是“.”和“source”,类似于c语言中的“#include”。 使用$.my export.sh # or $ sourcemyexport.sh

$echo $MY_PATH

/usr/local

-----------------

作者:如果你有什么想法,HS

来源: CSDN

译文: 3359 blog.csdn.net/u 012150792/article/details/50583972

声明:本文为博客原创文章。 转载请附上博文链接! 使用方法#功能说明:设定或显示环境变量。

# export [-fnp][变量名称]=[变量设定值]

#仅在这次注册中有效#另外添加的路径在:中添加

导出路径=$ path :/home/Jason 001123456在说明shell上运行程序时,shell提供一系列环境变量。 在export中,可以添加、修改或删除环境变量,以便在以后运行的程序中使用。 导出的效果只有此登录操作。 参数:-f表示在[变量名称]中为函数名称。

-n删除指定的变量。 变量实际上不会被删除,只是不会输出到后续指令的执行环境中。

-列出p shell赋予程序的所有环境变量123扩展导出并设置环境变量是临时的,仅在这次登录中有效。 请修改以下文件,使命令长期有效。 1 .修改配置文件#vi /etc/profile1 jqdsmt以获取:导出路径=' $ path :/opt/au 1200 _ RM/build _ tools/我们的名为rdmj'1的2 .修改此id根路径下的. bashrc或. bash_profile文件: # VI/home/Zhao dw/. bash _ profile1jqdsmt加入: expp

1、脚本运行时在子shell环境中运行,脚本运行后该子shell自动退出;

2、shell中的系统环境变量复制到子shell (导出中定义的变量);

3、一个shell中的系统环境变量仅对该shell或其子shell有效,当该shell退出时变量消失。 不能返回父shell。

4、export中未定义的变量仅对该shell有效,对子shell也无效。

-----------------

作者: Jason _ Cui佳惠

来源: CSDN

译文: 3359 blog.csdn.net/Jason _ Cui Jiahui/article/details/79408778

声明:本文为博客原创文章。 转载请附上博文链接!

转载于3:3359 www.cn blogs.com/ma changwei-8/p/10381608.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。