www.3112.net > shEll中[[]]和[]的主要区别是什么?

shEll中[[]]和[]的主要区别是什么?

linux中现在主要用的是bash 由于历史的发展以及版权问题,各个发行版有一些区别,不过linux基本都是用的bash 其它的都是各个unix用的,比如 solaris 用的就是csh.

在bash里,这两个都是引号,用来表明字符串,区别是,双引号中的变量会被展开,而单引号中不再展开。 举个例子: a="abc" echo "str=$a" # 结果显示 str=abc echo 'str=$a' # 结果显示str=$a

$( )中放的是命令,相当于` `,例如todaydate=$(date +%Y%m%d)意思是执行date命令,返回执行结果给变量todaydate,也可以写为todaydate=`date +%Y%m%d`; ${ }中放的是变量,例如echo ${PATH}取PATH变量的值并打印,也可以不加括号比如$PATH。

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

当你 exit 0 的时候,在调用环境 echo $? 就返回0,也就是说调用环境就认为你的这个程序执行正确当你 exit 1 的时候,一般是出错定义这个1,也可以是其他数字,很多系统程序这个错误编号是有约定的含义的。 但不为0 就表示程序运行出错。 调用环境...

通常写一个shell脚本都要在第一行注明使用什么解释器来解释这个脚本,即写成: #!/bin/bash 这样的形式,意思是告诉系统要使用/bin/bash这个解释器来解释下面的语句。 shell的脚本一般用.sh作为后缀,就如1楼说的后缀名在Linux下并没有特别意义...

如果.不在PATH里面,要执行当前目录下的可执行文件,使用全路径: ./executable-file 如果要执行一个sh脚本,不管那个脚本有没有可执行权限,都可以使用: sh [file] 这时file是作为参数传给sh的,如果file不在当前目录下,也需要使用全路径。 ...

1, 反引号很容易与单引号搞混乱,对初学者来说。有时在一些奇怪的字形显示中,两种符号是一模一样的(直竖两点)。用$()可以更好的避免这种混乱 2, 在多层次的复合替换中,反引号须要额外的跳脱( /` )处理,而 $( ) 则比较直观。例如: `com1`com2...

/是指根目录,就和Windows的我的电脑那个位置差不多。 ./是指用户所在的当前目录。 如下所示: [root~]# cd /etc [root etc]# pwd /etc [rootetc]# cd / [root /]# pwd / [root /]# cd /etc [rootetc]# cd ./ [rootetc]# pwd /etc [root etc]#

没说清楚,是linux shell编程还是C编程? ^在正则表达式中还有特殊含义,匹配字符串开头,比如 "^[0-9]" 表示以数字开头。 &加在shell命令后表示后台执行。

网站地图

All rights reserved Powered by www.3112.net

copyright ©right 2010-2021。
www.3112.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com