shell
mcusun2000
这个作者很懒,什么都没留下…
展开
-
shell 之 bash 与sh 区别
在文件的第一行#!/bin/sh #!/bin/bash 还是有区别的,如果是sh就认 let的指令,并且会打印出错chen@chen-ThinkPad-T420:~/rtl8188$ ./test8188.sh0x0011223344559./test8188.sh: 15: ./test8188.sh: let: not found9./test8原创 2016-03-31 22:07:49 · 496 阅读 · 0 评论 -
shell 之 read
http://blog.163.com/niuxiangshan@126/blog/static/170596595201271215933154/http://kb.cnblogs.com/a/2255702/1. Read的一些选项 Read可以带有-a, -d, -e, -n, -p, -r, -t, 和 -s八个选项。-a :将内容读入到数值中转载 2016-03-26 07:46:08 · 258 阅读 · 0 评论 -
把文件的读出值存入到变量中
#!/bin/bashread_char=`cat mac.sh | grep "mac" ` echo "$read_char" exit 0原创 2016-03-27 21:55:46 · 531 阅读 · 0 评论 -
shell 之 grep 控制显示关键字的 上下行数和不区分大小写
grep -C 5 foo file 显示file文件里匹配foo字串那行以及上下5行grep -B 5 foo file 显示foo及前5行grep -A 5 foo file 显示foo及后5行转载 2016-04-26 09:04:39 · 856 阅读 · 0 评论 -
openwrt 如何利用dmesage 查看flash,ram等信息
http://oiplay.com/978.html1.查看Flash容量大小(存储空间,可以理解为电脑的硬盘)root@OpenWrt:/# dmesg |grep spi |grep Kbytes #查看Flash容量[ 0.660000] m25p80 spi0.0: mx25l12805d (16384 Kbytes)#16384/1024=16M 既是转载 2016-03-13 15:21:51 · 2327 阅读 · 0 评论 -
shell 之 for 循环
for i in `seq 10`do iwpriv ra0 get_mac_table |grep "a7" >> singdate sleep 1s echo "count = $i"done 如果是用这个 (( 写法的,openwrt 会报出错 , 估计是因为 ash 不支持这样的写法 for (( i = 0 ; i d原创 2016-04-10 10:55:37 · 560 阅读 · 0 评论 -
脚本调试
最简单的调试方法当然是使用echo命令。你可以在任何怀疑出错的地方用echo打印变量值,这也是大部分shell程序员花费80%的时间用于调试的原因。Shell脚本的好处在于无需重新编译,而插入一个echo命令也不需要多少时间。shell也有一个真正的调试模式,如果脚本"strangescript"出错,可以使用如下命令进行调试:sh -x strangescript7上述命令转载 2016-05-04 22:24:10 · 331 阅读 · 0 评论 -
关于环璄变量的设定问题
如果在终端时,直接输入export STAGING_DIR=/home/chen/linux/openwrt/openwrt/staging_dir/export PATH=$STAGING_DIR/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2/bin这两个指示时,这时候变量已是生效了,但是这时候是估计是对这原创 2016-10-21 17:42:23 · 507 阅读 · 0 评论 -
sh 软连接的一些操作
ls -lsudo mv /bin/sh /bin/sh.oldsudo ln -s /bin/sh /bin/bashsudo ln -s /bin/bash /bin/sh sudo ln -s /bin/bash /bin/sh原创 2016-11-29 14:41:18 · 1411 阅读 · 0 评论 -
openwrt下的 软件包的make分析
start() {[ -f /etc/config/wifilink ] || {touch > /etc/config/wifilink} wifilink &}判断 wifilink 是否存在,如果没有存在的话,创建这个文件(文件内容可能是空的)然后再执行//-----------------------------defi原创 2016-11-29 17:29:19 · 363 阅读 · 0 评论 -
makefile 中的 指定库和头文件的路径
makefile中的指定头文件,源文件可以使用VPATH变量也可以使用vpath后者可以分类指定头文件源文件的搜索路径记住这样指定的路径仅仅是makefile本身查找头文件源文件的路径在执行makefile时,还要指定gcc/g++搜索头文件库文件的搜索路径-L //指定库文件搜索路径 -ltest//指定使用的动态库/静态库-I //指定搜索头文件的路径转载 2016-11-17 22:02:15 · 17846 阅读 · 0 评论 -
openwrt中OPKG后不启动的分析
启动有两个文件 /etc/init.d/XX 另一个文件在/etc/rc.d 中是存放着启动的软连接start() {[ -f /etc/config/laohuajia ] || {touch > /etc/config/laohuajia} laohuajia>/tmp/laohua 2>&1 & 这句可以把程序运行的错误都打印到一原创 2016-12-05 17:02:57 · 998 阅读 · 1 评论 -
ping 和 /dev/null
1、ping -c1 -w1 中-c1是指ping的次数,-w是指执行的最后期限,也就是执行的时间,单位为秒2、&>/dev/null 是指标准输出和错误输出都输出到/dev/null上,而不在界面上显示;原创 2016-03-15 08:47:59 · 1799 阅读 · 0 评论 -
shell 之 cat 显示不可见字符
CAT的用法 用简单的cat -A命令就可以显示所有不可见的字符:用cat -T命令来显示TAB键的字符^I原创 2016-03-15 08:43:47 · 2160 阅读 · 0 评论 -
openwrt之下显示连接的STA的mac和Rssi
root@SongJia:/# iwpriv ra0 get_mac_table | awk '{printf $1 "\t" $10 "\n"}'ra0MAC Rssif0:db:e2:5b:cc:a7 0中间的"\t"是表示制表符原创 2016-03-13 10:30:02 · 3766 阅读 · 0 评论 -
shell 之基本的运算指令
加法的三种表达式#!/bin/bashn=8 n=`expr $n + 1 `echo "n=$n"a=9let a=a+1echo "a=$a"b=11b=$(($b + 1))echo "b=$b"http://blog.sina.com.cn/s/blog_4b9eab320100rc1t.htmllet与(()) 在shel转载 2016-03-30 08:38:23 · 352 阅读 · 0 评论 -
shell 之 printf
read_char=123echo "cat is $read_char" #read_char=0x10 let read_char=read_char+1printf "%d\n" $read_charpintf 打印时,最好要格式化一下输出,如果直接用printf $read_char 会出输出不对的数据chen@chen-原创 2016-04-04 22:24:30 · 221 阅读 · 0 评论 -
Shell脚本学习之sed详解
http://blog.csdn.net/engledb/article/details/19623087linux(1) 目录(?)[+]在编写shell脚本的过程中,我们经常需要使用sed流编辑器和awk对文本文件进行处理。一、什么是sed? sed 是一种在线编辑器,它一次处理一行内容。sed是非交互式的编辑器。它不会修改文件,除非使用she转载 2016-04-04 22:39:44 · 551 阅读 · 0 评论 -
shell读取文件的指定行字符串
在得到数行输出时,需要得到指定行的字段,可以使用该指令。sed -n Np 文件名如sed -n 2p xxx输出结果即为第二行的内容在shell脚本中有时需要按行读出文件的内容,比如文件中每一行的命令等。假设存在文件filename,需要从中按行读取内容,并在每行的开头增加字符串command,命令如下cat filename | while read line; doecho转载 2016-03-13 08:33:20 · 2305 阅读 · 0 评论 -
shell 格式化输出
cat a.sh #!/bin/bash AAA="hello" BBB="asdasf" CCC="asdfasfsdf" printf "%-20s%-20s%-20s\n" "$AAA" "$BBB" "$CCC" printf "%-20s%-20s%-20s\n" "$BBB" "$AAA" "$CCC" printf "%-20s%-20s%-20s\n" "$AAA" "$CCC"转载 2016-03-13 09:31:05 · 915 阅读 · 0 评论 -
Awk分析
http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858470.htmlawk工作流程是这样的:读入有'\n'换行符分割的一条记录,然后将记录按指定的域分隔符划分域,填充域,$0则表示所有域,$1表示第一个域,$n表示第n个域。默认域分隔符是"空白键"或 "[tab]键",所以$1表示登录用户,$3表示登录用户ip,以此类推。awk中转载 2016-03-13 08:36:32 · 330 阅读 · 0 评论 -
shell 之 grep 指令
Linux里怎样查找文件内容Linux查找文件内容的常用命令方法。从文件内容查找匹配指定字符串的行: $ grep "被查找的字符串" 文件名从文件内容查找与正则表达式匹配的行: $ grep –e “正则表达式” 文件名查找时不区分大小写: $ grep –i "被查找的字符串" 文件名查找匹配的行数: $ grep -c "被查找的字符串" 文件名从文件内容查找不匹配指转载 2016-03-13 16:03:41 · 299 阅读 · 0 评论 -
shell 之16进制的数据显示方式
echo "cat is $((16#$read_char))" 16进制时, 显示前面要加$,并且要用两个((才行原创 2016-04-06 22:57:01 · 10415 阅读 · 0 评论 -
shell 之 2>&1 和 tee
inux shell 中"2>&1"的含义脚本:nohup /mnt/Nand3/H2000G >/dev/null 2>&1 &对于& 1 更准确的说应该是文件描述符 1,而1 一般代表的就是STDOUT_FILENO,实际上这个操作就是一个dup2(2)调用.他标准输出到all_result ,然后复制标准输出到文件描述符2(STDERR_FILENO),其后果就是文件描述符转载 2016-03-14 22:27:10 · 964 阅读 · 0 评论 -
shell 之 echo
echo stringecho命令有很多功能,其中最常用的是下面几个:\c 不换行。\f 进纸。\t 跳格。\n 换行 Echo >> 表示在原来的文件的是追加输入原创 2016-03-15 08:42:27 · 226 阅读 · 0 评论 -
openwrt 查看 lan口的 UP,DOWN 状态
swconfig dev mt7620 show原创 2017-01-09 15:58:26 · 14312 阅读 · 1 评论