首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

linux 环境变量设置(临时 + 永久)

  • 25-03-03 23:01
  • 4504
  • 13317
blog.csdn.net
一、环境变量
环境变量是具有特殊名字的一个特定对象,包含了一个或多个应用程序运行所需的信息。(例如PATH,可执行程序的搜索路径,当要求系统运行一个程序,而没告诉系统它的具体路径时,系统就要在PTAH值的路径中寻找此程序,找到去执行)
环境变量不仅有PATH,系统的环境变量还有:
C_INCLUDE_PATH 头文件的搜索路径
LIBRARY_PATH 静态库搜索路径(编译时包含)
LD_LIBRARY_PATH 动态库搜索路径(链接时包含)
...

此外,还可以根据具体程序的要求,为某程序单独设置其所需的环境变量。
例如tesseract,运行时需要traindata信息:
1、它默认去/usr/local/share目录下去找tessdata目录,使用其中的数据。
2、tesseract提供一个机会,让我们可以设置TESSDATA_PREFIX环境变量,指定tessdata的搜索路径,
可以设置 TESSDATA_PREFIX=/home/xyz/Tesseract/share      就可以在此路径的tessdata目录下放自己的训练数据了,tesseract运行时,会去这查找。

二、环境变量的设置(临时 + 永久)

举例:tesseract安装在当前用户某个目录下,其依赖库lept也安装在当前目录下

(非系统及程序默认的/usr/local/lib     /usr/local/include/    /usr/local/share)
-------------------------------------------------------------------------------------------------------------------------------------------
临时设置:

1、直接用export命令:
#export PATH=$PATH:/home/xyz/Tesseract/bintesseract可执行文件目录

#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH://home/xyz/Tesseract/lib其依赖库lept的路径

#export TESSDATA_PREFIX=/home/xyz/Tesseract/share其依赖的训练数据文件所在路径

查看是否已经设好,可用命令export查看:

# export 或者#echo $PATH


2、若crontab后台运行程序,也可在sh脚本进行临时设置

#! /bin/sh

#export PATH=$PATH:/home/xyz/Tesseract/bintesseract可执行文件目录

#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH://home/xyz/Tesseract/lib其依赖库lept的路径

#export TESSDATA_PREFIX=/home/xyz/Tesseract/share其依赖的训练数据文件所在路径

。。。其他操作语句

---------------------------------------------------------------------------------------------------------------------------------------------
永久设置
1、修改profile文件:

修 改/etc/profile(对所有用户都是有效的)
#vi /etc/profile
在里面加入:
export PATH="$PATH:/home/xyz/Tesseract/bin"

2、 修改.bashrc文件:
修改~/.bashrc文件。  (每个用户目录下都有,ls -all,单独用户有效)
cd ~
vi .bashrc
在里面加入:
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"

永久设置方法一般需要重新注销系统才能生效,注销重登陆后,可以通过echo命令测试一下:

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

三、设置、取消

         1、用set命令查看当前用户本地shell设置的所有变量

                    #set

          2、用unset取消变量的设置
                   #unset $TESSDATA_PREFIX

---------------------------------------------------------------------------------------------------------------------------------------------
 “/bin”、“/sbin”、“/usr/bin”、“/usr/sbin”、“/usr/local/bin”等路径已经在系统环境变量中了,如果可执行文件在这几个标准位置,在终端命令行输入该软件可执行文件的文件名和参数(如果需要参数),回车即可。

  如果不在标准位置,文件名前面需要加上完整的路径。不过每次都这样跑就太麻烦了,一个“一劳永逸”的办法是把这个路径加入环境变量。命令 “PATH=$PATH:路径”可以把这个路径加入环境变量,但是退出这个命令行就失效了。要想永久生效,需要把这行添加到环境变量文件里。有两个文件可选:“/etc/profile”和用户主目录下的“.bash_profile”,“/etc/profile”对系统里所有用户都有效,用户主目录下的“.bash_profile”只对这个用户有效。

  “PATH=$PATH:路径1:路径2:...:路径n”,意思是可执行文件的路径包括原先设定的路径,也包括从“路径1”到“路径n”的所有路径。当用户输入一个一串字符并按回车后,shell会依次在这些路径里找对应的可执行文件并交给系统核心执行。那个“$PATH”表示原先设定的路径仍然有效,注意不要漏掉。某些软件可能还有“PATH”以外类型的环境变量需要添加,但方法与此相同,并且也需要注意“$”。

  注意,与DOS/Window不同,UNIX类系统环境变量中路径名用冒号分隔,不是分号。另外,软件越装越多,环境变量越添越多,为了避免造成混乱,建议所有语句都添加在文件结尾,按软件的安装顺序添加。

  格式如下():

  # 软件名-版本号

  PATH=$PATH:路径1:路径2:...:路径n

  其他环境变量=$其他环境变量:...

  在“profile”和“.bash_profile”中,“#”是注释符号,写在这里除了视觉分隔外没有任何效果。

  设置完毕,注销并重新登录,设置就生效了。如果不注销,直接在shell里执行这些语句,也能生效,但是作用范围只限于执行了这些语句的shell。

  相关的环境变量生效后,就不必老跑到软件的可执行文件目录

文章知识点与官方知识档案匹配,可进一步学习相关知识
CS入门技能树Linux入门初识Linux40159 人正在系统学习中
注:本文转载自blog.csdn.net的yi412的文章"https://blog.csdn.net/yi412/article/details/11523525"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2491) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top