请教会linux shell脚本的=~是什么意思?

语句如下:[[$i=~^[0-9]+$]]&&echo1问题1:=~是什么意思?问题2:双括号[[]]和单括号[]有什么区别?问题3:后面的+$是什么意思?大神请点拨一下... 语句如下: [[ $i =~ ^[0-9]+$ ]] && echo 1
问题1: =~是什么意思?
问题2: 双括号 [[ ]] 和 单括号[ ] 有什么区别?
问题3: 后面的 +$ 是什么意思?
大神请点拨一下!
展开
 我来答
热点那些事儿
高粉答主

2021-01-25 · 关注我不会让你失望
知道大有可为答主
回答量:8668
采纳率:100%
帮助的人:192万
展开全部

正则表达式的字符判断

if [[ $i =~ ^[0-9]+$ ]] && echo 1

1、^是匹配字符串开始的意思,[0-9]只要不是数字都不要。

2、~ +的意思的^[0-9]的范围里匹配一次以上+ $是匹配结束符。

touch -t "201109021200.00" tempfile

使用引号内的时间戳在当前目录建立一个叫tempfile的文件

find -name "*VIRTUALID*" -newer tempfile -exec cp {} /home/wbft/luo \;

扩展资料

Shell就是一个命令行解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。它为用户提供了一个向Linux发送请求以便运行程序的接口系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。 

Shell本身是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言(就是你所说的shell脚本)。作为命令语言,它互动式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高阶语言中才具有的控制结构,包括循环和分支。

它虽然不是 Linux系统内核的一部分,但它调用了系统内核的大部分功能来执行程序、创建文档并以并行的方式协调各个程序的运行。

帐号已注销
2020-12-28 · TA获得超过77万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:157万
展开全部

应该是正则表达式的字符判断

if [[ $i =~ ^[0-9]+$ ]] && echo 1

1、^是匹配字符串开始的意思,[0-9]只要不是数字都不要。

2、~ +的意思的^[0-9]的范围里匹配一次以上+ $是匹配结束符。

touch -t "201109021200.00" tempfile

使用引号内的时间戳在当前目录建立一个叫tempfile的文件

find -name "*VIRTUALID*" -newer tempfile -exec cp {} /home/wbft/luo \;

扩展资料:

实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序。

Shell编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。

参考资料来源:百度百科-Linux Shell

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d49dc8e
2021-02-23 · TA获得超过1882个赞
知道小有建树答主
回答量:225
采纳率:25%
帮助的人:50万
展开全部

[[ ]]:条件判断语句

$i:i是个变量,$i代表读取变量i的值

=~:正则匹配,用来判断其左侧的参数是否符合右边的要求

^:以什么开头

^[0-9]:以数字开头

^[0-9]+:以数字开头,且数字有1到多个——加号表示1到多个

$:以什么结尾

^[0-9]+$:以1到多个数字开头,且结尾。——意即:只能有数字,不能有其他字符

&&:左边的条件满足,右边的命令才会执行。

echo 1:屏显1(在屏幕上显示,也叫打印)

所以:

[[$i=~^[0-9]+$]]&&echo1的意思是:

如果变量i的值是纯数字,就屏显1

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
oowood
推荐于2017-09-11 · TA获得超过1781个赞
知道大有可为答主
回答量:2196
采纳率:81%
帮助的人:1212万
展开全部
应该是正则表达式的字符判断
if [[ $i =~ ^[0-9]+$ ]] && echo 1

1、^是匹配字符串开始的意思,[0-9]只要不是数字都不要

2、~ +的意思的^[0-9]的范围里匹配一次以上+ $是匹配结束符
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
linu0001
2020-07-24 · TA获得超过438个赞
知道小有建树答主
回答量:847
采纳率:100%
帮助的人:34.7万
展开全部

正则匹配,用来判断其左侧的bai参数是否符合右边的要求

详细命令描述可以看下

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式