bash cookbook】的更多相关文章

Bash 是brian Fox在1988年1月10号出于Richard Stallman的建议而写的.   一. 运行模板: 交互登陆的shell,登陆后bash会读取和执行/etc/profile. 然后依次读取~/.bash_profile,~/.bash_login,~/.profile,发现第一个能执行的,执行之.退出登陆时,会读取和执行~/.bash_logout. 交互非登陆式启动,会读取和执行~/.bashrc. bash_history中存储了执行过的cmd.        作用…
目录 简介 变量 静态变量 变量操作 数组 应用 四则运算 条件测试 整数测试 文件测试 字符测试 组合条件测试 选择语句 循环语句 for--有限循环 while--无线循环 until continue 函数 格式化输出 echo printf echo printf 其他 位置参数 $@ $* $# 如果命令运行失败让脚本退出执行 若有用未设置的变量即让脚本退出执行 BASH中用 read 实现"按任意键继续" 简介 GNU Bash,又名 Bourne Again Shell.…
[it-ebooks]电子书列表   [2014]: Learning Objective-C by Developing iPhone Games || Leverage Xcode and Objective-C to develop iPhone games http://it-ebooks.info/book/3544/Learning Web App Development || Build Quickly with Proven JavaScript Techniques http:…
SHLVL 是记录多个 Bash 进程实例嵌套深度的累加器,而 BASH_SUBSHELL 是记录一个 Bash 进程实例中多个子 Shell(subshell)嵌套深度的累加器. 看不懂上面这句话不要紧,因为是我临时编的.其实如果你混淆了这两个变量,我猜你多半是对 BASH_SUBSHELL 这个变量名中的 subshell 概念不清,下面我们就讲讲什么是 subshell,什么不是. 很多人误以为在 Bash 里面再执行一次 Bash,或者再执行一个 Shell 脚本就是进入子 Shell…
1.在赋值语句name=value中不能存在空格,例如:name = value这样的形式会被认为是三个变量,因为本质上来说,脚本的内容就是传给shell程序的变量,而变量之间是通过空格区分的.如果想要在value里面出现空格,则需要用引号标注出来,想要应用变量的内容则在变量名前加‘$’符号,如下: 2.当我们需要在一些非空格字符之间插入变量时,例如:为了脚本的扩展性,常在路径名/home/my$USERtxt中用变量取代一部分内容,但是这样做的话,我们其实无法区分变量名是USER还是USERt…
1.PATH变量:shell最主要的功能就是执行用户输入的命令,例如当用户输入一条“ls”命令之后,shell就要找到该命令对应的文件并执行.通常shell都会设置一个名叫PATH的环境变量,其中保存着一系列用于查找命令文件的目录名,并且目录出现的顺序非常重要,因为shell会按序进行查找,当找到第一个与命令对应的文件就执行 2.通常可根据“$?”的值来判断上一条命令是否运行成功.一般$?=0则说明上一条命令运行成功,否则表示不成功.如果熟悉C语言的话就会知道,其实$?保存的就是上一个程序mai…
1.将标准输出(stdout)和标准错误输出(stderr)分别重定向到两个不同的文件 其中符号'>'默认将标准输出重定向,意思和'1>'相同,‘2>'表示重定向标准错误输出,数字1和2其实是文件描述符,在Linux下默认1为标准输出STDOUT,2为标准错误输出STDERR 2.将标准输出和标准错误输出重定向到同一个文件中,共有下图所示三种写法,后两种写法可以认为符号&是作为特殊标记了,第一种写法则可以看做先将STDOUT输出到both文件,“2>&1”则可将1理…
一   文件的 权限基础 文件有三类权限   user,group,other, 权限分为 r w x  代表数字分别为 4 2 1 修改权限命令 chmod 权限还有特殊权限,在执行的时候代表某一身份的权限去执行 分别有文件拥有者权限,组权限,所有人权限. 文件拥有者身份的权限即在 user权限将执行权限x改成s.即 rwx=>rws来表示.权限值则为在原有权限前加4000.如原权限为 755,则现权限则变更为4755 组身份权限 即将组的执行权限的x变更为s.权限值为在原有权限前+2000.…
cookbook 概述 Chef 意为"厨房",我们要做"菜",自然需要有"菜谱".事实上在 Chef 中分发到各服务器节点的不是"菜",而是"菜谱",服务器自己"做菜",自己管理自己. Cookbook 规定了在 Chef 中执行的操作顺序,决定了应用的构建步骤.可以从市场中寻找一个 cookbook,市场地址:https://supermarket.chef.io/cookbooks…
本系列文章为<Linux Shell Scripting Cookbook>的读书笔记,只记录了我觉得工作中有用,而我还不是很熟练的命令 书是很好的书,有许多命令由于我比较熟悉,可能就没有记录在其中了 1. 获得进程的环境变量 cat /proc/$PID/environ 将原先彼此间的null('\0')分隔符替换成换行 cat /proc/1194/environ | tr '\0' '\n' 2. 获得字符串长度 length=${#var} 3. 数字运算 let, (()), []执…