这工作小半年了发现以前学的那么多流弊技能都不怎么用,倒是shell用的很多,自己已经从shell小菜鸟一步步走过来,已经要变成大菜鸟=.= 经常需要用shell按行读取配置文件,自己在上面踩了很多坑,可依然没长记性,故记录下来.先创建一个测试用例toy.txt; [VasiliShi@ZXXS workplace]$ cat toy.txt this is 1 this is 2 this is 3 使用while读取 使用while读取文件时候需要配合read,利用read读取文件时,每次调用
Reference: http://saiyaren.iteye.com/blog/1943207 1. Shell 读取文件和写文件 for line in $(<top30000.url.utf-8.http_server_front_hphp.txt); do tmp_port=8080; for((i=0;i<=7;i++));do echo ${line/192\.168\.12\.63/192\.168\.12\.63:$tmp_port} >>top3000
对于命令行输出的结果,如果要遍历,一般都是用for循环遍历,具体语法为: for line in `ls` do dosomethingdone 此时对于ls这类语句的输出结果,在遍历的时候会调用系统默认的分隔符(IFS=” “),对于ls这类命令结果确实是在一行,只需要按照空格进行分割的话,如上语法就OK了. 但是往往,有时候是需要对命令行输出结果按行遍历的,如: for line in `ls -lrt` do dosomethingdone 按照ls -lrt遍历文件的属性,此
遍历目录下的所有文件 假如有一个文件夹路径为dir,遍历文件 for file in /path/dir/* do if test -f $file then echo $file arrary=(${arrary[*]} $file) fi done echo ${arrary[@]} 这段代码可以读取目录dir下面的所有的文件名,如果dir目录中还有目录且该目录下的文件名也要求返回. function get_all_file() { /* do if [ -f temp ]; then e