Linux的set命令
文章作者:Tyan
博客:noahsnail.com | CSDN | 简书
1. set命令介绍
set
命令主要用来设置shell,在编写shell脚本时,使用set
命令能设置shell的执行方式,根据需求不同,采用的参数设置也不同。set
命令也用来显示系统中已存在的shell变量以及设置新的shell变量。
2. set命令的常用参数及作用
- set
不带参数的set
命令用来显示环境变量。
root@3500f62fe5ae:/workspace# set
BASH=/bin/bash
BASHOPTS=checkwinsize:cmdhist:complete_fullquote:expand_aliases:extquote:force_fignore:histappend:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath
BASH_ALIASES=()
BASH_ARGC=()
BASH_ARGV=()
BASH_CMDS=()
BASH_LINENO=()
BASH_SOURCE=()
BASH_VERSINFO=([0]="4" [1]="3" [2]="48" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu")
BASH_VERSION='4.3.48(1)-release'
COLUMNS=236
CUDA_HOME=/usr/local/cuda
CUDA_PKG_VERSION=10-0=10.0.130-1
CUDA_VERSION=10.0.130
CUDNN_VERSION=7.6.0.64
...
- set -e
-e
参数表示只要shell脚本中发生错误,即命令返回值不等于0,则停止执行并退出shell。set -e
在shell脚本中经常使用。默认情况下,shell脚本碰到错误会报错,但会继续执行后面的命令。
test.sh
脚本内容如下:
#!/usr/bin/env bash
set -ehello
echo "Hello set"
执行结果如下:
root@3500f62fe5ae:/workspace# sh test.sh
test.sh: 4: test.sh: hello: not found
注:set +e
表示关闭-e选项,set -e
表示重新打开-e选项。
- set -u
-u
参数表示shell脚本执行时如果遇到不存在的变量会报错并停止执行。默认不加-u
参数的情况下,shell脚本遇到不存在的变量不会报错,会继续执行。
test.sh
脚本内容如下:
#!/usr/bin/env bash
echo $testset -u
echo $hello
执行结果如下:
root@3500f62fe5ae:/workspace# sh test.shtest.sh: 5: test.sh: hello: parameter not set
参考资料
- http://www.ruanyifeng.com/blog/2017/11/bash-set.html
- http://www.runoob.com/linux/linux-comm-set.html
- http://man.linuxde.net/set
Linux的set命令相关推荐
- linux下find命令的使用和总结
背景:find命令十分的好用,特别是在查找文件的时候,这个时候需要和文件通配符一起使用. 1 前言 我们为什么要学会使用find命令? 每一种操作系统都有成千上万的文件组成,对于linux这样&quo ...
- linux 判断某个命令是否安装
linux 判断某个命令是否安装 if ! [ -x "$(command -v git)" ]; thenecho 'Error: git is not installed.' ...
- linux下比较文件并输出,Linux使用diff命令比较文件找出文件之间相同的部分
如果你需要比较系统文件的内容,那么你就会是使用到diff命令,可找出文件之间相同的部分,下面小编就给大家详细介绍下Linux diff命令的用法. diff 命令是 linux上非常重要的工具,用于比 ...
- Linux的watch命令--实时监测命令的运行结果
watch 是一个非常实用的命令,基本所有的 Linux 发行版都带有这个小工具,如同名字一样,watch 可以帮你监测一个命令的运行结果,省得你一遍遍的手动运行.直接在 watch 后面接你想运行的 ...
- linux的strace命令
linux的strace命令 strace 命令是一种强大的工具,它能够显示所有由用户空间程序发出的系统调用. strace 显示这些调用的参数并返回符号形式的值.strace 从内核接收信息,而且不 ...
- Linux下addr2line命令用法
Linux下addr2line命令用于将程序指令地址转换为所对应的函数名.以及函数所在的源文件名和行号.当含有调试信息(-g)的执行程序出现crash时(core dumped),可使用addr2li ...
- Linux查看WAS的jvm信息,linux 下使用命令查看jvm信息
java程序员除了编写业务代码之外,特别是项目上线之后,更需要关注的是系统的性能表现,这个时候就需要了解一下jvm的性能表现了,可以借助于java虚拟机自带的一些分析工具,主要有三个常用的命令. 1. ...
- linux命令注入,Linux kernel本地命令注入漏洞
Linux kernel本地命令注入漏洞 2005-10-19 eNet&Ciweek Linux kernel 2.2.6 Linux kernel 2.2.5 Linux kernel 2 ...
- linxu passwd 给linux用户设置密码 命令
[root@localhost ~]# passwd # 修改 root 用户的密码 passwd 给linux用户设置密码 命令 passwd www 直接passwd是当前用户设置密码 非交互式修 ...
- Linux之链接命令
Linux之链接命令 1. 链接命令的介绍 链接命令是创建链接文件,链接文件分为: 软链接 硬链接 命令 说明 ln -s 创建软链接 ln 创建硬链接 2. 软链接 类似于Windows下的快捷方式 ...
最新文章
- APP和网站应该选择云主机还是服务器呢?
- 场效应与三极管 电路标识符_看懂这6个提示,轻松搞定恒流源电源电路设计!...
- 主定理(master theorem)学习小记
- java integer引用传递_在java中String,对象,Integer(包装类型的)关于引用传递还是值传递...
- ping 计算机名 ipv4,09. 查看本地链路地址(fe80);ping主机名称时IP
- Android布局Include的好处,Android布局之include文件的使用中的疑难杂症
- OpenJudge计算概论-最长单词2
- Apache Tomcat目录下各个文件夹的作用
- springboot security 权限不足_springBoot整合springSecurity(零一)
- python历史 用量 预测_用python做时间序列预测七:时间序列复杂度量化
- BP神经网络的数学原理及其算法实现
- iOS: 详细的正则表达式
- 关于编程开发的最小系统学习法
- jquery下载教程,Juery3.0框架使用案例以及基础语法;
- Linux环境变量PATH
- 用html和css制作钟表,使用HTML5和CSS3制作简单的钟表
- 虚拟机登录MySQL
- win7 锁定后硬盘灯常亮
- 第二章 数据通信基础
- win7系统清除卸载软件后残留的图标技巧--win10专业版