博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux 预定义变量
阅读量:6961 次
发布时间:2019-06-27

本文共 1092 字,大约阅读时间需要 3 分钟。

  hot3.png

linux bash的变量有多种

用户自定义的变量,环境变量,语系变量,位置参数变量,预定义变量

预定义变量

在linux  shell下执行一条命令,都会有一个返回值,这个返回值就保存到$?中,可以用echo $?输出查看

$?只保存最后一次命令执行的返回值,当这条命令正确执行时,返回0,执行出错时返回非零的一个数,具体是多少,这个得看当时写这个shell命令的作者的意图了。有一些常见的返回值,命令未找到,返回127,文件没找到,返回2等等。

利用命令执行后的返回值,可以结合逻辑或,逻辑与的表达式,写个控制两个命令如何执行的小应用

ls && grep 

这样的表达式,能够控制两个命令里,只有一个命令被正确的执行。当第一条命令正确执行后,返回0,此时根据表达式的短路原理,不会执行第二个命令。而当第一个命令错误的执行时,必须执行第二个命令才可以获得表达式的值。通过这样的表达式求值过程,达到两个命令里执行一个正确命令的目的

ls || grep

这样的表达式,能够控制两个命令必须正确执行。  当第一条命令执行后,返回0 ,意味着,必须执行第二个命令,才能获得表达式的值。这样,通过这表达式的求值,达到两个命令必须正确执行的目的。

$$  

通过echo $$ 可以查看当前进程的进程号

$!

有些命令执行的很慢,执行不完的命令,你只能在命令行下苦苦地等待。这个时候,有一个&符号可以帮助你。在输入每个命令的最后,都可以键入&,来控制使这个命令在后台执行,而前台并不耽误别的事情。而后台刚刚执行的命令,或者最后一次执行的命令的进程号,可以通过echo $!来查看。

read命令

read命令有点像C语言中的scanf命令,可以在命令行上输出提示符来提示执行某一个命令或者程序时,如何输入参数等,达到提示的一个效果,并且还有一些额外的控制

\p 可以在这个参数后输入提示信息,如“please input ...."

\t  控制等待用户输入时的时间,以秒为单位

\s  能够把输入的信息隐藏起来,保护敏感信息,类似于表单的password

\n  控制用户输入的字符个数,用户输入完指定个数的字符后,系统就会认为用户已经输入完毕,该命令可以执行了,

read \p "please  input your name" name

echo $name

read \p "input your sex(M/F) " \n  sex

read \p "input your age" \s \t 30 age

转载于:https://my.oschina.net/lsfop/blog/389900

你可能感兴趣的文章
基于arm的多路温度采集控制系统(4)菜单界面
查看>>
Java中ArrayList和LinkedList区别
查看>>
k8s实践8:容器应用配置文件管理利器configmap
查看>>
中国三大运营商3G工作频率/频点及速率
查看>>
2016年的自动化测试趋势
查看>>
我的友情链接
查看>>
MySQL中latin1与中文
查看>>
稳定--恐怖的速度
查看>>
Linux学习笔记4_基本命令复习2(find)
查看>>
转行程序员难么?阿里巴巴五年老鸟:编程学不好的只有3种人
查看>>
我的友情链接
查看>>
Eclipse下的web工程部署到服务器
查看>>
浅析IT人士初入职场与职场五年的区别之处
查看>>
对偶理论和灵敏度分析---单纯形法的矩阵描述
查看>>
大数据存储管理大趋势
查看>>
我的友情链接
查看>>
R478规划及实施—理想丰满、现实骨感
查看>>
FreeBSD scp xftp 无法使用时,考虑sftp。
查看>>
使用计划任务定时重启Server
查看>>
RedisCluster工具类
查看>>