- 博客(24)
- 资源 (50)
- 问答 (1)
- 收藏
- 关注
原创 shell中命令的执行流程
在shell中,一个命令有3中写法:1 可以直接写(Normal Command)2 可以放在双引号中("Command")3 可以放在单引号中('Comand')这3中写法,命令的执行流程也是不一样的,如下图所示:由pipe characte(|)分割commandshell脚本中,每一行文本称为一个pipeline,每一个pipeline由0个或者多个pi...
2016-07-31 23:41:00 380
原创 shell中的path expansion
glob扩展在shell中的路径扩展中,涉及到的glob有如下几种:? 匹配任何单个字符* 匹配0到多个字符[set] 匹配任何一个在set当中的字符,如[0-9],则匹配任何一个数字[!set] 匹配任何不在set当中的字符,如[!0-9],则匹配任何非数字字符需要注意的是:在基于set的glob,如果要匹配-,则可以把-放在set前面,或者放在set后面,...
2016-07-31 22:59:00 120
原创 shell中的declare命令
declare命令有如下选项:-a 声明一个数组-i 声明一个整型-f 打印所有函数定义-F 仅打印函数名字-r 声明一个readonly变量,该变量的值无法改变,并且不能为unset-x 和export的作用类似 1) 这里需要注意的是,当使用-i选项来做算数运算的时候,等号右边的变量前面没有$符,并且等号右边的变量可以不用declare -i进行声明。...
2016-07-31 22:14:00 1677
原创 shell的string operator
${varname:-word}如果varname存在并且不为nil,那么返回varname的值,否则返回word。这个常用来在varname未定义时返回默认值 ${varname:=word}如果varname存在并且不为nil,那么返回varname的值,否则将varname的值设置为word并且返回该值。这个常用来对变量设置默认值 ${varname:?me...
2016-07-31 21:33:00 94
原创 shell中对于命令的搜寻顺序
当你在shell命令行输入一条命令时,shell的搜寻顺序是如何的呢?当你的脚本名字和shell中的函数名字重名,shell是如何决定运行哪一个的?在shell中,shell对于命令的搜寻优先级为:1 Alias2 keyword,如if3 Function4 Built-in,如cd4 PATH中的脚本以及可运行程序 在shell中,有3个命令comma...
2016-07-31 18:33:00 402
原创 在shell中运行以不同方式运行脚本
在shell当中,可以有3中方式运行脚本:1 . ./script_name 或者source ./script_name2 直接./script_name3 ./script_name &加入脚本script_name中有两个命令command1,command2,那么,当以第一种方式运行时,command1和command2都在当前shell中运行,并没有产生...
2016-07-31 18:28:00 176
原创 shell中的type命令
type [-aftpP] name [name,...]-a 打印name的所有可能情况,比如type -a ls,会打印ls is aliased to 'ls --color=auto'和ls is /bin/ls-f 不会去查找function-t 打印alias,keyword,function,built-in,file这5种类型-p 如果 type -t n...
2016-07-31 17:51:00 3251
原创 shell中的数组
声明alphas[2]=calphas[0]=aalphas[1]=balphas=([2]=c [0]=a [1]=b)alphas=(a b c)上面3种形式都声明的数组包含相同的内容,第一个元素是a,第二个元素是b,第三个元素是c。其中,第二种方式可以和第三种方式混合使用:alphas=([2]=c [0]=a ...
2016-07-31 13:11:00 89
原创 shell中的循环语句
for语法格式for var in list;do commandsdone 其中list可以包含:1) 直接写for alpha in a b c d;do echo $alphadone 2)变量list="a b c d"for alpha in $list;do echo $alphadone...
2016-07-30 14:55:00 150
原创 shell中的case表达式
语法格式case var inpattern1 | patter2) command1 command2;;pattern3) command1 command2;;*) default command1 default command2;;esac 需要注意的是:1)pattern可以包含通配符2)语句中的;;括号...
2016-07-30 13:11:00 141
原创 shell中的双括号表达式
语法格式(( expression ))expression可以是任何数学表达式,可以包含的操作符有:+ 加- 减* 乘(无需转义)/ 除% 取余** 指数== 等于!= 不等> 大于< 小于>= 大于等于<= 小于等于&& 逻辑与|| 逻辑或! 逻辑非& 按位与| ...
2016-07-30 13:05:00 224
原创 shell中的if语句
语法格式if command;then commandsfi其中的command包含如下: shell command任何shell命令,如果shell命令返回0,代表true,否则,代表false。并且多个command可以同时作为if的判断条件,即可以写为: if command1;command2;command3;then comma...
2016-07-30 12:46:00 106
原创 shell
语法格式if command;then commandsfi其中的command包含如下: shell command任何shell命令,如果shell命令返回0,代表true,否则,代表false。并且多个command可以同时作为if的判断条件,即可以写为: if command1;command2;command3;then comma...
2016-07-30 12:46:00 70
原创 view的生命周期
ViewController中包含 6个方法,管理着view的生命周期:loadViewviewDidLoadviewWillAppear:viewDidAppear:viewWillDisappear:viewDidDisappear: 调用时机loadView的调用时机为:当请求ViewController的view属相为nil时,会调用该方法,此...
2016-07-28 17:28:00 174
原创 shell中的数学运算
shell中要进行数学运算通常有3中方法:expr命令比如 expr 1 + 6就会返回7,使用expr的缺点就是碰到乘法运算,或者加括号(因为它们在shell中有其他意义),需要使用转义,比如:expr \( 2 + 3\) \* 5,这样就会使得表达式很难看 $[expression]命令使用$[expression]命令也可以进行数学计算,并且比expr方便的...
2016-07-12 22:41:00 137
原创 shell中的expr命令
expr 可以进行的操作如下:逻辑操作arg1 | arg2 逻辑或操作,真则返回arg1,否则返回arg2(以null或者0来判断参数的真假,有短路功能)arg1 & arg2 逻辑与操作,真则返回arg1,否则返回arg2(以null或者0来判断参数真假,有短路功能) 关系操作arg1 = arg2(或者arg1 == arg2)相等返回1,不等返回0...
2016-07-12 22:19:00 560
原创 shell中的退出状态码
shell中的退出状态码最大只有255,如果超过这个值,就会进行取余运算,即如果执行如下命令:exit exitCode 如果exitCode大于255,那么实际的状态码为exitCode % 256。举个例子,如果exitCode = 300,那么实际的状态码就是44 ...
2016-07-12 21:07:00 1478
原创 shell脚本中变量的声明周期
定义在shell脚本中的变量,当shell脚本执行完成之后,就访问不到了,即使在脚本中没有对该变量进行unset。比如有如下脚本:#!/bin/bashvar="lucy"echo $var在terminal运行完该脚本之后,如果在中断接着echo $var,那么输出空行,而不是lucy。...
2016-07-12 21:03:00 262
原创 反引号backtick中输入多个命令
如果在反引号backtick中输入多个命令会怎样?比如有如下脚本:#!/bin/bashvar=`date;who`echo $var 运行该脚本,会发现输出的是命令date和who的集合,只是每一行用空格分隔,即使单独运行who命令有多行,这些行也会使用空格和date命令的输出结合在一起。 ...
2016-07-12 21:00:00 407
原创 iconv编码转换指令
看到一个不错的指令iconv,可以对文件编码进行转换,记录如下:iconv --list 列出所有支持转换的编码icon -f code1 -t code2 filename -o newfile-f 即from 原来的编码-t 即to 新的编码filename 待转换的文件名-o newfile 要输出的文件名 ...
2016-07-10 21:03:00 184
原创 vim常用指令一览
插入指令 i 在光标处插入字符I 在光标所在行最前插入a 在光标所在字符后面插入A 在光标所在行的最后插入o 在光表所在行下面插入一行O 在光标所在行上面插入一行r 替换光标所在字符,只替换一次R 替换光标处字符,知道按下ESC为止跳转指令0 跳转到光标所在行开头$ 跳转到光标所在行末尾n<空格键>从光标开始跳转n个字符G ...
2016-07-10 21:00:00 143
原创 shell启动时读取的配置文件
bash shell具体可以分为3种类型,这3种类型为:1 login shell就是需要输入用户名和密码才能登陆的shell 2 可交互的非login shell就是不用登陆的,但是可以同用户进行交互的shell,比如在父shell当中执行bash命令产生的子shell就是一个可交互的非login shell 3 不可交互的非login shell这类s...
2016-07-10 16:42:00 438
原创 shell中的环境变量
局部(local)环境变量定义局部环境变量的方式如下:variableName=value需要注意的是variableName前面没有$符号,并且=两边没有空格。局部环境变量只能在当前shell中使用,无法在其派生的子shell中使用 全局(global)环境变量定义全局环境变量的方式如下:variableName=valueexport variab...
2016-07-10 15:52:00 191
Mac OS X and iOS Internals:To the Apple’s Core.pdf
2020-11-17
Ecma-262规范
2020-11-17
AdvanceAppleDebugging_v0.9.1_SourceCode
2020-11-17
Unicode Standrad
2015-09-24
Git书籍两本打包
2015-09-24
elementary functions
2015-09-24
由于axis2的三本英文书籍
2015-09-24
C89以及Rational
2014-11-26
linux只能连接无密码wifi,无法连接有密码wifi
2015-09-08
TA创建的收藏夹 TA关注的收藏夹
TA关注的人