以下属于“shell 标签”的內容

  • linux echo命令的-n、-e参数详解 抢沙发

    linux echo命令的-n、-e参数详解

    2016-02-14 By  分类:Linux 1,298人浏览

    echo -n 不换行输出 $echo -n "123" $echo "456" 最终输出 123456 而不是 123 456 echo -e 处理特殊字符 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出: \a 发出警告声; \b 删除前一个字符; \c 最后不加上换行符号; \f 换行但光标仍旧停留在原来的位置; \n 换行且光标移至行首; \r 光标移至...

  • Bash shell 中算术运算的四种方式 抢沙发

    Bash shell 中算术运算的四种方式

    2015-01-27 By  分类:Linux 1,468人浏览

    1:使用 expr 外部命令 $ r=`expr 4 + 5` # 这里的空格一个都不能少 $ echo $r 9 $ echo `expr 4 * 5` expr: syntax error $ echo `expr 4 \* 5` # * 需要用\进行转义 20 4 + 5是传递给expr命令的三个参数,所以必须用空格隔开 2:使用 $(( )) $ r=$((4+5)) $ echo $r 9 3:使用 $[ ] $ r=$[4+5] $ echo $r 9 $(( ))和$[ ...

  • 抢沙发

    shell中的进行算术/数值运算的几种方法

    2015-01-27 By  分类:Linux 1,206人浏览

    shell中的变量都是以字符串的形式保存的,即使你赋值的时候给的是整形值,除非你通过declare -i来声明变量。 在进行数值/算术运算的时候,你可能会发现下面的情况 $ x=121 $ echo $x+1 121+1 定义变量x,并赋值一个整形的变量,可是echo $x+1的结果却不是我们想要的122,而是121+1。这是因为$x+1并没有被当做算术运算,而是简单的字符串...

  • shell十三问?(简体中文版)第12问:你要 if 还是 case 呢? 抢沙发

    shell十三问?(简体中文版)第12问:你要 if 还是 case 呢?

    2015-01-16 By  分类:Linux 1,218人浏览

    还记得我们在第 10 章所介绍的 return value 吗?是的,接下来介绍的內容与之有关。若你记得 return value ,我想你也应该记得了 && 与 || 是甚么意思吧? 用这两个符号再配搭 command group 的话,我们可让 shell script 变得更加聪明哦。比方说: comd1 && { comd2 comd3 : } || { comd4 comd5...

  • shell十三问?(简体中文版)第11问:> 与 < 差在哪? 抢沙发

    shell十三问?(简体中文版)第11问:> 与 < 差在哪?

    2015-01-15 By  分类:Linux 1,079人浏览

    11.1 谈到 I/O redirection ,不妨先让我们认识一下 File Descriptor (FD) 。 程序的运算,在大部份情況下都是进行数据(data)的处理,这些数据从哪读进?又,送出到哪里呢? 这就是 file descriptor (FD) 的功用了。 在 shell 程序中,最常使用的 FD 大概有三个,分別为: 0: Standard Input (STDIN) 1: Standard Output (STDOUT) 2: St...

  • shell十三问?(简体中文版)第10问:&&与||差在哪? 抢沙发

    shell十三问?(简体中文版)第10问:&&与||差在哪?

    2015-01-14 By  分类:Linux 1,088人浏览

    好不容易,进入两位数的章节了…一路走来,很辛苦吧?也很快乐吧? 在解答本章题目之前,先让我们了解一个概念:return value(返回值)! 我们在shell下跑的每一个command或function,在结束的时候都会传回父进程一个值,称为return value(返回值)。 在shell 命令行中可用$?这个变量得到最新的一个return value,也就是刚结束的那个进程传回的...

  • shell十三问?(简体中文版)第9问:$@与$*差在哪? 抢沙发

    shell十三问?(简体中文版)第9问:$@与$*差在哪?

    2015-01-13 By  分类:Linux 1,149人浏览

    要说$@与$*之前,需要先从shell script的positional parameter(位置参数)谈起… 我们都已经知道变量(variable)是如何定义及替换的,这个就不用再多谈了。但是,我们还需要知道有些变量时shell内定的,且其名称是我们不能随意修改的,其中就有positional parameter(位置参数)在内。 在shell script中,我们可用$0,$1,$2,$3…这样的变量分别提取...

  • shell十三问?(简体中文版)第8问:$(( )) 与 $( ) 还有${ } 差在哪? 抢沙发

    shell十三问?(简体中文版)第8问:$(( )) 与 $( ) 还有${ } 差在哪?

    2015-01-13 By  分类:Linux 1,141人浏览

    我们上一章介紹了 ( ) 与 { } 的不同,这次让我们扩展一下,看看更多的变化:$( ) 与 ${ } 又是啥玩意儿呢? 在 bash shell 中,$( ) 与 ` ` (反引号) 都是用来做命令替换用(command substitution)的。所谓的命令替换与我们第五章学过的变量替换差不多,都是用来重组命令行: * 完成引号里的命令行,然后将其结果替换出来,再重组命令行。 ...

  • shell十三问?(简体中文版)第7问:( ) 与 { } 差在哪? 抢沙发

    shell十三问?(简体中文版)第7问:( ) 与 { } 差在哪?

    2015-01-12 By  分类:Linux 1,037人浏览

    嗯,这次轻松一下,不讲太多… ^_^ 先说一下,为何要用 ( ) 或 { } 好了。 许多时候,我们在 shell 操作上,需要在一定条件下一次执行多个命令,也就是说,要么不执行,要么就全执行,而不是每次依序的判断是否要执行下一个命令。或是,需要从一些命令执行优先次序中得到豁免,如算术的 2*(3+4) 那样… 这时候,我们就可引入”...