shell整理(37)===变量理解和两个练习题

简介:

1 /etc/profile

2 ~/.bash_profile

3 ~/.bashrc

4 $PATH


其中,/etc/profile是全局的环境变量,对所有用户生效,而.bash_profile只对当前用户启作用。


~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.简单说就是把脚本路径放在这里面,每次用户登录的时候都会执行这里面的脚本路径中的脚本。

~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取.(每个用户都有一个.bashrc文件,在用户目录下)简单说就是把脚本路径放在这里面每打开一个shell就会执行脚本路径中的脚本。


$PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接。

  编辑你的 PATH 声明,其格式为:

  PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>

  你可以自己加上指定的路径,中间用冒号隔开。环境变量更改后,在用户下次登陆时生效,如果想立刻生效,则可执行下面的语句:$ source .bash_profile

  需要注意的是,最好不要把当前路径 “./” 放到 PATH 里,这样可能会受到意想不到的攻击。完成后,可以通过 $ echo $PATH 查看当前的搜索路径。这样定制后,就可以避免频繁的启动位于 shell 搜索的路径之外的程序了。

 





俩课后练习题

(1)为root用户编写登录欢迎脚本,报告当前主机中的进程数,已登录的用户,根文件系统的磁盘使用率,当从TTY终端登录时,显示的效果如下所示。

wKiom1ndFeehTwEFAAAps37pNtc997.png-wh_50

推荐步骤:

(1)新建脚本文件welcome.sh,用于输出各种监控信息。

(2)修改/root/.bash_profile文件,调用welcome.sh脚本程序。

脚本如下:

wKioL1ncp9fx4G07AAAcnbRtadA616.png-wh_50

在/root/.bash_profile中添加路径如下:

wKioL1ncqEbwB0jiAAAeuDLQAk8985.png-wh_50

(2)编写start、stop、status三个脚本程序,用来启动、停止各种系统服务。例如,直接执行stop crond \start crond 命令即可停止、启动crond 服务。

PATH变量用于设置可执行程序的默认搜索路径,当仅指定文件名称来执行命令程序时,linux系统将在PATH变量指定的目录范围查找对应的可执行文件,如果找不到则会提示“command not found”


查看$PATH 路径

wKioL1ncqnvipYnTAAAR6h_Snng305.png-wh_50

我们可以看到有/root/bin,我们把start.sh 脚本放到/root/bin/下

start.sh脚本内容如下:


wKiom1ndGuay-JLVAAAXOplueEw379.png-wh_50

在~/.bashrc中添加别名:

wKiom1ndG1jhuz7lAAAmbknAd6k830.png-wh_50

输出结果如下:

wKiom1ndG3fBAXq4AAAmYT1oRyA195.png-wh_50


总结:

脚本不是重要的,这篇主要想整理下这几个重要的文件,很有用。



本文转自 大雪儿 51CTO博客,原文链接:http://blog.51cto.com/dingxue/1971265,如需转载请自行联系原作者

相关文章
|
7月前
|
Shell Linux
|
7月前
|
Shell Python
python 和shell 变量互相传递
python 和shell 变量互相传递
75 0
|
7月前
|
Shell Linux
Linux下的Shell基础——变量、运算符、条件判断(二)
Linux下的Shell基础——变量、运算符、条件判断(二)
130 0
|
2月前
|
存储 Java Shell
Shell 变量
10月更文挑战第2天
30 0
|
3月前
|
Shell
shell脚本变量 $name ${name}啥区别
shell脚本变量 $name ${name}啥区别
|
3月前
|
Java Shell Linux
Shell 变量设置
Shell设置变量
55 5
|
3月前
|
Java Shell Linux
Shell 变量设置25-1
Shell编程语言是一种非类型的解释型语言,无需像C++/Java那样事先声明变量。通过赋值即可定义变量,在Linux支持的所有Shell中均适用。变量分为局部变量与环境变量,前者仅限于定义脚本内使用,后者可在其派生的子进程中使用。常见系统变量如$0表示当前程序名称,$n表示第n个参数(n=1,2,...,9),$*代表所有参数,$#代表参数个数,$?表示命令执行后的状态(0为成功),$UID为当前用户ID,$PWD表示当前目录。定义变量如`A=123`,
33 0
|
4月前
|
Shell
[shell]在curl测试的data参数中引用变量
[shell]在curl测试的data参数中引用变量
245 1
|
5月前
|
分布式计算 大数据 Shell
MaxCompute产品使用合集之odps shell如何将ech变量的结果集合写入文件,并且指定服务器的位置
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
53 10
|
7月前
|
Shell Linux Perl
Linux|如何允许 awk 使用 Shell 变量
Linux|如何允许 awk 使用 Shell 变量
100 2