首页 > 系统相关 >Linux的环境变量不生效

Linux的环境变量不生效

时间:2024-10-23 10:51:46浏览次数:8  
标签:profile source Linux etc 生效 root 环境变量 加载

一、定时任务无法加载系统的环境变量

  系统环境变量生效顺序:

1.首先读入的是全局环境变量设定目录/etc/profile,然后根据其内容读取额外的设定的文档,如 /etc/profile.d和/etc/inputrc

2.然后去用户家目录下,读取~/.bash_profile,否则读取~/.bash_login,再否则~/.profile,这三个文档设定基本上是一样的,存在读取优先关系

3.然后再去用户家目录下,读取~/.bashrc
  1、linux配置定时任务的用户环境变量

  在Linux系统中,执行定时任务时,默认加载的是用户环境变量 ~/.bashrc ,不会加载系统变量,而要使用系统变量,可以用如下方式:

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

*/1  *  *  *  * root /root/xx.sh                           # 使用用户环境变量
*/1  *  *  *  * root source ~/.bashrc &&  /root/xx.sh      # 使用用户环境变量

*/1  *  *  *  * root source /etc/profile &&  /root/xx.sh   # 使用系统环境变量

  在以上的配置中,定时任务只是默认加载当前用户的环境变量,即 所有的定时任务,默认使用 source ~/.bashrc 来加载执行后续命令的。

  如果要加载 系统环境变量,则需指定加载系统变量文件,即 source /etc/profile 这段命令。 && 符号意思就是执行多个命令,这里是先加载系统环境变量,然后再执行 /root/xx.sh的命令。 

二、Linux系统环境变量

  1、现象:每次登陆系统时,都需要source /etc/profile  

  Linux每次进入都需要 source /etc/profile才能使用java命令,需要配置永久环境变量,修改etc目录下的bashrc文件,在最前面添加

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_161 
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

标签:profile,source,Linux,etc,生效,root,环境变量,加载
From: https://blog.csdn.net/happy_king_zi/article/details/143162213

相关文章

  • Maven的安装,环境变量配置及基本使用
    Maven简介Maven是一个项目管理和构建自动化工具,专注于Java应用的开发。它通过项目对象模型(POM)来管理项目的构建、报告和文档。Maven的主要特点包括依赖管理和项目信息管理。Maven的核心功能依赖管理:Maven能够管理项目中所有jar包的版本,确保团队成员和不同的开发环境......
  • Linux常用命令大全超详细知识点概览
    我是小粥学姐,下面是Linux常用命令大全哦,先上目录。章节目录一、文件和目录管理命令二、文件内容查看与编辑命令三、文件搜索与查找命令四、系统管理与监控命令五、网络管理与通信命令六、用户管理与权限设置命令七、打包压缩与备份命令八、其他实用命令一、文件......
  • Linux(银河麒麟)升级openssh和openssl
    Linux升级openssh升级包下载地址:openssh:https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gzopenssl:https://github.com/openssl/openssl/releases/download/openssl-3.3.2/openssl-3.3.2.tar.gzzlib:https://zlib.net/fossils/zlib-1.3.tar.gz备份原......
  • Linux系统:more命令
    1、命令详解:        more命令是Linux系统中的一个文本查看器,它可以一次显示一页内容,并提供了一些方便的浏览操作,比如向下滚动、向上滚动、搜索等。当需要查看大型文件或长文本时,通过分页显示可以很好地避免一次性将整个文件显示在终端上,从而提高效率。2、语法:more......
  • 在Linux命令行下载Google Drive大文件(解决Google Drive下载慢的问题)
    文章目录1、使用gdown命令2、复制链接3、替换为Linux下载链接注意:在Linux命令行进行1、使用gdown命令wget只能下载小文件,大文件需要用到gdownpipinstallgdown#如果不能够直接安装,使用以下命令gitclonehttps://github.com/wkentaro/gdowncdgdownpipin......
  • linux之makefile
    目录linux之makefile模板每个.c编译成.o再链接在一起每个.c文件各自编译链接成可执行文件linux之makefile学习https://www.cnblogs.com/paul-617/p/15501875.html模板每个.c编译成.o再链接在一起OUT:=mainSRCS:=$(wildcard*.c)OBJS:=$(patsubst%.c,%.o,$(SRCS))CC:=gcc......
  • Linux部署springboot项目
    在Linux上部署SpringBoot应用通常包括以下步骤: 准备Java环境:确保已安装Java,并且java命令可用。   准备SpringBoot应用的WAR或JAR包:通过Maven或Gradle构建项目,生成可执行的包。   上传包到Linux服务器:可以使用SCP、SFTP或其他文件传输工具。  ......
  • 批量自动分发Linux密码
    2.批量自动分发密钥(完整版)#本shell脚本是基于DSA加密方式进行加密的,测试的环境为centOS7.5,若要使用别的加密方式,请修改源代码,此脚本可以自动发现IP地址,并分发分发,同一网段的IP地址,目前还不可以分发多网段的IP地址。#可以实现SSH密钥基于DSA方式密钥的分发及创建新密钥并进行分......
  • Linux系统上使用nmcli命令配置各种网络
    目录一、配置NetworkManager接管网络(选)安装Network-Manager并启动netplan管理网络的系统ifupdown管理网络的系统二、nmcli的相关配置(后置参数均可缩写)有线网络配置使用nmcli添加一个网卡并配置静态ip地址激活/关闭网卡使用nmcli修改一个网卡的地址使用nmcli添加一个网卡......
  • 【北京迅为】i.mx8mm嵌入式linux开发指南第四篇 嵌入式Linux系统移植篇第六十九章uboo
      迅为i.mx8mm开发板特点: 性能强:i.MX8MM处理器采用了先进的14LPCFinFET工艺,提供更快的速度和更高的电源效率;四核Cortex-A53,单核Cortex-M4,多达五个内核,主频高达1.8GHz,2GDDR4内存、8GEMMC存储。 PMIC:采用PCA9450A电源管理,是NXP全新研制配套iMX.8M的电源管理芯片,有六个......