以下属于“Linux 分类”的內容
-
抢沙发
shell十三问?(简体中文版)第12问:你要 if 还是 case 呢?
2015-01-16 By ustckris 分类:Linux 3,525人浏览
还记得我们在第 10 章所介绍的 return value 吗?是的,接下来介绍的內容与之有关。若你记得 return value ,我想你也应该记得了 && 与 || 是甚么意思吧? 用这两个符号再配搭 command group 的话,我们可让 shell script 变得更加聪明哦。比方说: comd1 && { comd2 comd3 : } || { comd4 comd5...
-
抢沙发
shell十三问?(简体中文版)第11问:> 与 < 差在哪?
2015-01-15 By ustckris 分类:Linux 3,506人浏览
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问:&&与||差在哪?
2015-01-14 By ustckris 分类:Linux 3,715人浏览
好不容易,进入两位数的章节了…一路走来,很辛苦吧?也很快乐吧? 在解答本章题目之前,先让我们了解一个概念:return value(返回值)! 我们在shell下跑的每一个command或function,在结束的时候都会传回父进程一个值,称为return value(返回值)。 在shell 命令行中可用$?这个变量得到最新的一个return value,也就是刚结束的那个进程传回的...
-
抢沙发
shell十三问?(简体中文版)第9问:$@与$*差在哪?
2015-01-13 By ustckris 分类:Linux 3,492人浏览
要说$@与$*之前,需要先从shell script的positional parameter(位置参数)谈起… 我们都已经知道变量(variable)是如何定义及替换的,这个就不用再多谈了。但是,我们还需要知道有些变量时shell内定的,且其名称是我们不能随意修改的,其中就有positional parameter(位置参数)在内。 在shell script中,我们可用$0,$1,$2,$3…这样的变量分别提取...
-
抢沙发
shell十三问?(简体中文版)第8问:$(( )) 与 $( ) 还有${ } 差在哪?
2015-01-13 By ustckris 分类:Linux 3,376人浏览
我们上一章介紹了 ( ) 与 { } 的不同,这次让我们扩展一下,看看更多的变化:$( ) 与 ${ } 又是啥玩意儿呢? 在 bash shell 中,$( ) 与 ` ` (反引号) 都是用来做命令替换用(command substitution)的。所谓的命令替换与我们第五章学过的变量替换差不多,都是用来重组命令行: * 完成引号里的命令行,然后将其结果替换出来,再重组命令行。 ...
-
抢沙发
shell十三问?(简体中文版)第7问:( ) 与 { } 差在哪?
2015-01-12 By ustckris 分类:Linux 3,219人浏览
嗯,这次轻松一下,不讲太多… ^_^ 先说一下,为何要用 ( ) 或 { } 好了。 许多时候,我们在 shell 操作上,需要在一定条件下一次执行多个命令,也就是说,要么不执行,要么就全执行,而不是每次依序的判断是否要执行下一个命令。或是,需要从一些命令执行优先次序中得到豁免,如算术的 2*(3+4) 那样… 这时候,我们就可引入”...
-
抢沙发
shell十三问?(简体中文版)第6问:exec 跟 source 差在哪?
2015-01-12 By ustckris 分类:Linux 3,367人浏览
这次先让我们从 CU Shell 版的一个实例贴子来谈起吧:例中的提问原文如下: cd /etc/aa/bb/cc可以执行 但是把这条命令写入shell时shell不执行! 这是什么原因呀! (意思是:运行脚本后并沒有移到 /etc/aa/bb/cc 目录) 我当时如何回答暂时別去深究,先让我们了解一下进程(process)的观念好了。 首先,我们所执行的任何程式,都是由父进...
-
抢沙发
shell十三问?(简体中文版)第5问:var=value?export 前后差在哪?
2015-01-11 By ustckris 分类:Linux 3,411人浏览
这次让我们暂時丟开 command line ,先来了解一下 bash 变量(variable)吧… 所谓的变量,就是利用一个特定的”名称”(name)来存取一段可以变化的”值”(value)。 设定(set) 在 bash 中,你可以用 “=” 来设定或重新定义变量的內容: name=value 在设定变量的时侯,得遵守如下规定: * =左右两边不能...
-
抢沙发
shell十三问?(简体中文版)第4问:”"(双引号)与”(单引号)差在哪?
2015-01-11 By ustckris 分类:Linux 3,586人浏览
还是回到我们的 command line 来吧… 经过前面两章的学习,应该很清楚当你在 shell prompt 后面敲打键盘、直到按下 Enter 的时候,你输入的文字就是 command line 了,然后 shell 才会以进程的方式执行你所交给它的命令。 但是,你又可知道:你在 command line 输入的每一个文字,对 shell 来說,是有类別之分的呢? 简单而言,comman l...
-
抢沙发
shell十三问?(简体中文版)第3问:别人echo,你也echo,是问echo知多少
2015-01-10 By ustckris 分类:Linux 2,347人浏览
承接上一章所介绍的command line,这里我们用echo这个命令加以进一步的说明。 温习一下标准的command line包含的三个主要部分: command-name options argument echo 是一个非常简单、直接的Linux命令: *将argument送出至标准输出(stdout),通常就是在显示器上输出。 为了更好理解,不如先让我们跑一下echo 命令好了: $ echo $ ...