平时在写 BASH 脚本时,总是会碰到让人抓狂的 BUG。和 C/C++ 这么丰富的调试工具相比,BASH 又有什么调试手段呢? 1 echo/print (普通技) 打印一些变量,或者提示信息。这应该是一个通用的方法了。在 BASH 里,我们可以简单的用 echo,或者 print 来输出一些 l ...
分类:
其他好文 时间:
2016-05-25 07:03:33
阅读次数:
125
1) if/then结构: 判断命令列表的退出码是否为0,0为成功。 如果if和then在条件判断的同一行上的话, 必须使用分号来结束if表达式; if和then都是关键字。 if [ condition1 ] then command1 command2 command3 elif [ condi ...
分类:
其他好文 时间:
2016-05-23 16:46:46
阅读次数:
153
bash脚本参数的设定选择参数add|del添加删除user1-user10#!/bin/bashif[$#-lt1];thenecho"Usage:adminusersARG"exit5fiif[$1==‘--add‘];thenforIin{1..10};doifiduser$I&>/dev/null;thenecho"user$Iexists."elseuseradd-ruser$Iechouser$I|passwd--stdinuser$I&>..
分类:
其他好文 时间:
2016-05-19 13:32:18
阅读次数:
140
如果bash脚本中一些命令需要手工输入进行交互的时候,那么脚本的自动化就没法进行下去。比如:ssh somehost需要输入用户名和密码,脚本运行到这个命令后,便会停止,等待用户输入。
如果在简单情景下,比如只需要用户输入一次,即一次性交互时,可以直接这样:# ... some directives here# Remove the machine, confirming "y" when ask...
分类:
其他好文 时间:
2016-05-12 23:01:07
阅读次数:
225
Bash(GNU Bourne-Again Shell)是一个为GNU计划编写的Unix shell,它是许多Linux平台默认使用的shell。
Bash脚本编程的变量:
1、$BASH
表示的是Bash的二进制程序文件的路径
eg:编辑bash文件例如1.sh,在其中输入如下代码:
然后保存运行,就会出现bash脚本解释器的路径。
2、$FUNCNA...
分类:
其他好文 时间:
2016-05-12 18:10:03
阅读次数:
122
一、循环
1.for循环
bash脚本中的for循环,编辑bash文件1.sh,输入代码如下:
(例子中的代码目的是输出1到10的数字)
运行1.sh,即在终端输入bash 1.sh,得到的结果如下:
执行结果分析:第一个for循环格式中没有给后面的数字加" ",使得这些数字并非是一个整体,但是第二个for循...
分类:
其他好文 时间:
2016-05-12 15:06:27
阅读次数:
145
原理
CocoaPods的原理,它是将所有的依赖库都放到另一个名为Pods项目中,然后 让主项目依赖Pods项目,这样,源码管理工作都从主项目移到了Pods项目中
1、Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a 文件即可。 2、对于资源文件,CocoaPods提供了一个名为Pods-resources.sh的bash脚本, 该脚本在每次项目编...
分类:
其他好文 时间:
2016-05-07 10:43:34
阅读次数:
194
脚本编程之函数:function:功能,结构化编程,不能独立运行,需要调用时执行,可以多次被调用定义一个函数:functionFUNCNAME{COMMAND}或FUNCNAME(){COMMAND}自定义执行状态返回值return#0-255接受参数的函数:FUNCNAMEmnm在function函数里面用$1引用,相应地,n对应于$2例子..
分类:
其他好文 时间:
2016-05-05 07:10:54
阅读次数:
147
这里的技术技巧最初是来自谷歌的“Testing on the Toilet” (TOTT)。这里是一个修订和扩增版本。 脚本安全 我的所有bash脚本都以下面几句为开场白: 这样做会避免两种常见的问题: 引用未定义的变量(缺省值为“”) 执行失败的命令被忽略 需要注意的是,有些Linux命令的某些参 ...
分类:
其他好文 时间:
2016-04-23 21:30:52
阅读次数:
153
bash脚本里定义后续命令执行日志输出路径#!/bin/bash
logDir=`date+%F`
exec&>/tmp/logDir.log
//此次定义后续命令的执行输出日志路径
df-h
topfor循环循环允许你重复一段代码固定次数,在循环代码执行期间,一个称为循环变量的特殊变量被赋予了不同的值;for循环很适合..
分类:
系统相关 时间:
2016-04-20 20:18:27
阅读次数:
206