摘要:
内部字段分隔符(Internal Field Separator,IFS)是shell脚本编程的一个重要概念。下面将讨论把单个数据流划分成不同数据元素的定界符(delimiter),内部字段分隔符是用于特定用途的定界符。IFS是存储定界符的环境变量。它是当前shell环境默认使用的默认定界字符串。 阅读全文
摘要:
在日常工作中使用shell时,有时候命令只有满足某些条件或是某种外部事件,操作才能够成功执行,这种情况下,你可能系统重复执行命令,直至成功为止。 1、按照以下方式定义函数: repeat() { while true do $@ && return done } 或者把它放入shell的rc文件,更 阅读全文
摘要:
read是一个重要的bash命令,它用于从键盘或标准输入中读取文本。可以使用read以交互的形式读取来自用户的输入,不过read能做的远不止这些。很多编程语言的输入库都是从键盘读取输入,且只有回车键按下的时候,才标志着输入完毕,很多情形不是这样的,比如输入结束与否是基于字符数或某个特定字符来决定的。 阅读全文
摘要:
shell脚本最棒的特性之一就是可以轻松地将多个命令或工具组合起来生成输出。一个命令的输出可以作为另一个命令的输入,而这个命令的输出又会传递至另一个命令,以此类推。这种命令组合的输出可以被存储在一个变量中。 1、输入通常是通过stdin或参数传递给命令。输出要么出现在stderr,要么出现在stdo 阅读全文
摘要:
我们可以创建执行特定任务的函数,也可以创建能够接受参数的函数 1)定义函数 function fname() { statements; } 或者 fname() { statements; } 2)只需要使用函数名就可以调用某个函数 $ fname; #意思是执行函数 3)参数可以传递给函数,并由 阅读全文
摘要:
我们可以利用bash内建的调试工具,或者按照易于调试的方式编写脚本; 1)使用选项-x,启用shell脚本的跟踪调试功能: $ bash -x script.sh 运行带有-x标志的脚本可以打印出所执行的每一行命令以及当前状态。注意,也可以使用 sh -x script. 2)使用set -x和se 阅读全文
摘要:
tput和stty是两款终端处理工具 1)获取终端的行数和列数 tput cols tput lines 2)打印出当前终端名 tput longname 3)将光标移动到坐标(100,100)处 tput cup 100 100 4)设置终端背景颜色 tput setb n (n可以在0到7之间取 阅读全文
摘要:
别名就是一种便捷方式,以省去用户输入一长串命令序列的麻烦。 1)可以按照下面的方式创建一个别名: alias new_command='command sequence' 为安装命令apt-get install创建别名 alias install='sudo apt-get install' 2) 阅读全文
摘要:
数组是shell脚本非常重要的组成部分,它借助索引将多个独立的数据存储为一个集合。 普通数组只能使用整数作为数组索引。 bash也支持关联数组,它可以使用字符串作为数组索引。 1)定义数组的方法有多种:可以在单行中使用一列值来定义一个数组: 如,array_var=(1 2 3 4 5 6);这些值 阅读全文
摘要:
strstr函数 strchr函数 wpa_supplicant的移植和可能遇到的问题 blog.csdn.net/ti_tantbx/article/details/7037741 sscanf函数的字符匹配 sscanf(pESSID,"ESSID:\"%[^\"]\"",ssid);sscan 阅读全文