【Linux】一步一步学Linux——set命令(222)
发布日期:2021-06-29 20:45:21
浏览次数:2
分类:技术文章
本文共 2742 字,大约阅读时间需要 9 分钟。
00. 目录
文章目录
01. 命令概述
set命令作用主要是显示系统中已经存在的shell变量,以及设置shell变量的新变量值。使用set更改shell特性时,符号"+“和”-"的作用分别是打开和关闭指定的模式。set命令不能够定义新的shell变量。如果要定义新的变量,可以使用declare命令以变量名=值
的格式进行定义即可。
02. 命令格式
用法:set [选项] [参数]
03. 常用选项
-a 标示已修改的变量,以供输出至环境变量-b 使被中止的后台程序立刻回报执行状态-C 转向所产生的文件无法覆盖已存在的文件-d Shell预设会用杂凑表记忆使用过的指令,以加速指令的执行。使用-d参数可取消-e 若指令传回值不等于0,则立即退出shell-f 取消使用通配符-h 自动记录函数的所在位置-H Shell可利用”!”加 <指令编号> 的方式来执行history中记录的指令-k 指令所给的参数都会被视为此指令的环境变量-l 记录for循环的变量名称-m 使用监视模式-n 只读取指令,而不实际执行-p 启动优先顺序模式-P 启动-P参数后,执行指令时,会以实际的文件或目录来取代符号连接-t 执行完随后的指令,即退出shell-u 当执行时使用到未定义过的变量,则显示错误信息-v 显示shell所读取的输入值-x 执行指令后,会先显示该指令及所下的参数 指令编号>
04. 参考示例
4.1 查看本地变量
[root@localhost ~]# deng="hello itcast"[root@localhost ~]# echo $denghello itcast[root@localhost ~]# set | grep dengdeng='hello itcast'[root@localhost ~]#
4.2 查看当前设置情况
[root@localhost ~]# set -oallexport onbraceexpand onemacs onerrexit offerrtrace offfunctrace offhashall onhistexpand onhistory onignoreeof offinteractive-comments onkeyword offmonitor onnoclobber offnoexec offnoglob offnolog offnotify offnounset offonecmd offphysical offpipefail offposix offprivileged offverbose offvi offxtrace off[root@localhost ~]#
4.3 把vi选项打开
[root@localhost ~]# set -o vi[root@localhost ~]# set -oallexport onbraceexpand onemacs offerrexit offerrtrace offfunctrace offhashall onhistexpand onhistory onignoreeof offinteractive-comments onkeyword offmonitor onnoclobber offnoexec offnoglob offnolog offnotify offnounset offonecmd offphysical offpipefail offposix offprivileged offverbose offvi onxtrace off[root@localhost ~]#
4.4 内置set命令选项
选项名 快捷开关 含义 allexport -a 从这个选项中被设置开始就自动标明要输出的新变量或修改过的变量,直至选项被复位 braceexpand -B 打开花括号扩展,它是一个默认设置 emacs 使用emacs内置编辑器进行命令行编辑,是一个默认设置 errexit -e 当命令返回一个非零退出状态(失败)时退出。读取初始化文件时不设置 histexpand -H 执行历史替换时打开!和!!扩展,是一个默认设置 history 打开命令行历史、默认为打开 ignoreeof 禁止用EOF(Ctrl+D)键退出shell。必须键入exit才能退出。等价于设置shell变量IGNOREEOF=10 keyword -k 将关键字参数放到命令的环境中 interactive-comments 对于交互式shell,把#符后面的文本作为注释 monitor -m 设置作业控制 noclobber -C 防止文件在重定向时被重写 noexec -n 读命令,但不执行。用来检查脚本的语法。交互式运行时不开启 noglob -d 禁止用路径名扩展。即关闭通配符 notify -b 后台作业完成时通知用户 nounset -u 扩展一个未设置的变量时显示一个错误信息 onecmd -t 在读取和执行命令后退出 physical -P 设置时,在键入cd或pwd禁止符号链接。用物理目录代替 privileged -p 设置后,shell不读取.profile或ENV文件,且不从环境继承shell函数,将自动为setuid脚本开启特权 verbose -v 为调试打开verbose模式 vi 使用vi内置编辑器进行命令行编辑 xtrace -x 为调试打开echo模式
05. 附录
参考:
转载地址:https://dengjin.blog.csdn.net/article/details/100901005 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
关注你微信了!
[***.104.42.241]2024年04月13日 03时09分20秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
【语句总结】OpenGL的一些语句
2019-04-30
【算法记录】在内循环作出优化的冒泡排序
2019-04-30
【算法记录】梅式砝码问题
2019-04-30
【算法记录】斐波那契数列的余求解
2019-04-30
【语句总结】java中改变数字精确度
2019-04-30
【语句总结】java中数值的精确计算,大型小数:BigDecimal
2019-04-30
【概念理解】Java中parseXXX和valueOf,toString的区别
2019-04-30
【语句总结】回文序列各项之和问题中发现的java特性
2019-04-30
【语句总结】获取字符串的某个单独字符:charAt()方法
2019-04-30
【算法记录】联通体的并查集
2019-04-30
【算法记录】快速幂
2019-04-30
【语句总结】大数操作:BigInteger
2019-04-30
【从零实现一个H.264码流解析器】(二):导入指数哥伦布解码实现并初步解析NALU
2019-04-30
【从零实现一个H.264码流解析器】(三):解析序列参数集SPS的句法元素
2019-04-30
【从零实现一个H.264码流解析器】(四):生成句法元素跟踪trace文件
2019-04-30
【音视频基础】(十一):YUV颜色空间之电视图像的数字化
2019-04-30
【音视频基础】(十二):YUV颜色空间之数字电视标准
2019-04-30
【音视频基础】(十三):YUV颜色空间之YUV和YCbCr
2019-04-30
【音视频基础】(十四):YUV颜色空间之图像子采样
2019-04-30