为了定时监控Linux系统CPU.内存.负载的使用情况,写了个Shell脚本,当达到一定值得时候,发送邮件通知.需要用到Crontab的定时任务去执行这个脚本,但是发现通过命令(./test.sh)执行Shell文件的时候,可以获取Linux的环境变量;可是通过Crontab做的定时任务,无法获取. 查找资料之后发现,crontab有一个坏毛病,就是它总是不会缺省的从用户profile文件中读取环境变量参数,经常导致在手工执行某个 脚本时是成功的,但是到crontab中试图让它定期执行时就是会出…
crontab,总是不会缺省的从用户profile文件中读取环境变量参数 经常导致在手工执行某个脚本时是成功的,但是到crontab中试图执行时就会报错. 解决办法如下: 方法一:在shell文件中获取环境变量值路径写成绝对路径,不用环境变量的路径值.例如获取CPU的使用情况,通过/proc/cpuinfo来获取 方法二:在shell脚本缺省的#!/bin/bash 开头换行后执行 source /etc/profile source $HOME/.bash_profile 这样,crontab…
太懒了,这几天好像得了懒癌,一点都不想写博客.后来想想,知识嘛,还是分享出来的好.第一治自己的懒癌:第二顺便巩固下自己的知识. Linux的变量分为两种,一种是系统变量,是系统一经启动,就写进内存中的变量.在各个进程.以及子进程中都可以调用得到. 一种是自己设置的变量,关机后再开机就挂了,或者切去下个进程,就找不到变量了.这个是局部变量. 以上两种变量,第五天的时候有详细的讲述过,这里就不赘述了. 查看环境变量有个命令:env   env是environment[环境] 的意思. 这个里面有一些…
一 .概述 默认情况下, bash shell会用一些特定的环境变量来定义系统的环境.这些默认环境变量可以理解是上篇所讲的系统全局环境变量. 1.1 bash  shell支持的Bourne变量 Bourne shell 是 UNIX 最初使用的 shell.下面例举几个常用的变量名. 变量名 描述 HOME 当前用户的主目录 PATH Shell查找命令的目录列表,由冒号分隔 PS1 Shell命令行界面的主提示符 PS2 Shell命令行界面的次提示符 如下图所示:使用echo 输出该变量名…
  2015-05-08 00:15 3896人阅读 评论(10) 收藏 举报 本文章已收录于:   分类: 软件开发进阶(419) 作者同类文章X Unix/Linux杂项(118) 作者同类文章X 版权声明:本文为博主原创文章,未经博主允许不得转载. 这个年代, 大家写点书, 也无非就是为了搞点钱, 基本都是罗列一些知识点, 基本都是写给已经会了的人看的. 真正用心写书的人, 不多. 如果真正用心写书, 且站在读者的角度去写, 那就少之又少了. 关于linux shell环境变量, 我看了四…
每当我们使用ssh客户端远程登陆一个服务时,操作系统就会给我们分配一个新的shell,并且这个shell继承了操作系统的永久环境变量.在当前的shell执行一个sh文件,都会临时产生一个子shell,该文件执行完毕后,将自动返回到父shell. 子shell会继承父shell的所有永久环境变量和临时环境变量. 父shell不能使用子shell中定义的变量和环境变量. 1.永久环境变量 /etc/profile  永久生效,对所有用户有效,需要重启 /etc/bashrc 永久生效,对所有用户有效…
linux下查看和添加PATH环境变量 $PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接. 编辑你的 PATH 声明,其格式为: PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N> 你可以自己加上指定的路径,中间用冒号隔开.环境变量更改后,在用户下次登陆时生效,如果想立刻生效,则可执行下面的语句:$ sourc…
一.系统环境变量位置 在上章中,知道了如何修改系统环境变量,如PATH变量,以及创建自己的全局环境变量和局部环境变量.这篇学习怎么让环境变量的作用持久化.在此之前,先了解下系统环境变量文件会在哪些位置,当使用bash shell时,bash是如何查找环境变量位置的.下面先来介绍几个文件,这些文件叫启动文件或叫环境文件. bash检查的启动文件(环境文件)取决于你启动bash shell的方式.启动bash shell有3种方式: (1) 登录时的默认登录shell. (2) 交互式shell.…
0x00 压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586.bin 这时会出现一段协议,连继敲回车,当询问是否同意的时候,输入yes,回车.之后会在当前目录下生成一个jdk1.6.0_14目录,你可以将它复制到 任何一个目录下. 0x01 需要配置的环境变量 1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序…
1.在Windows 系统下,很多软件安装都需要配置环境变量,比如 安装 jdk ,如果不配置环境变量,在非软件安装的目录下运行javac 命令,将会报告找不到文件,类似的错误. 2.那么什么是环境变量?简单说,就是指定一个目录,运行软件的时候,相关的程序将会按照该目录寻找相关文件. 设置变量对于一般人最实用的功能就是: 不用拷贝某些dll文件到系统目录中了,而path 这一系统变量就是系统搜索dll文件的一系列路径 在Linux系统下,如果你下载并安装应用程序,很有可能在键入它的名称的时候出现…