使用shell开发

来自WRTnode Wiki
跳转至: 导航搜索
此页面有未被标记进行翻译的更改

其他语言:
English • ‎中文(中国大陆)‎

阅读本词条需要您对Linux shell使用与开发有基础有概念,关于这些基本的东西,如果需要中文资料,建议参考https://github.com/qinjx/30min_guides/blob/master/shell.md,英文的话,建议参考http://linuxcommand.org/lc3_learning_the_shell.php
目前各款WRTnode所使用的OpenWrt里用的是Bourne shell,即最基础最通用的那个shell,另外,因为OpenWrt没有更多的用户,你在shell里总是以root身份在执行。这几乎是唯一一点OpenWrt与你的桌面Linux在shell本身的区别,然而,对于开发者来说,也几乎感觉不到这个区别。
然后,OpenWrt目前使用的busybox跟桌面级Linux是同源的,但是为了适应嵌入式的低资源环境,OpenWrt官方做了非常多的简化配置,如果感兴趣,可以看看OpenWrt做了哪些定制:https://github.com/openwrt/openwrt/blob/81ac3610fc8e6e41dbe15ad4486a7cfb64226cd2/package/utils/busybox/config/Config.in
说到这里,我也实在不知道再跟你们聊点什么了,不如,看个例子?

  • shell编程
root@OpenWrt:~# vi test.sh
#!/bin/sh
str="Hello world!"
echo $str

运行时首先要将文件的权限修改为可执行:

root@OpenWrt:~# chmod a+x test.sh

运行:

root@OpenWrt:~# ./test.sh
Hello world!

少年,这样讲是不是就可以了?