Openwrt下functions.sh部分函数用法
目录
一、config_load
二、config_get
三、config_set
四、config_foreach
五、config_list_foreach
六、board_name
七、user_exists
八、user_add
九、group_add_user
十、group_add
十一、append
十二、list_contains
一、config_load
config_load
package为/etc/config/下的某个配置文件
二、config_get
config_get
三、config_set
config_set -- 将value设置到对象中
四、config_foreach

五、config_list_foreach

六、board_name
如果存在/tmp/sysinfo/board_name这个文件,则打印其中的内容,否则返回generic
七、user_exists
该函数用于判断在/etc/passwd中是否存在用户

八、user_add
该函数用于添加用户,首先了解一下/etc/passwd的格式:
用户名:密码:用户ID:组ID:用户全名:主目录:登录shell
用户加密后的密码这列就为x或者*,如果是!则表示不能用密码登录
/etc/shadow 文件格式:
用户名:加密密码:上次更改密码的时间:密码不可更改的天数:密码需要重新更改的天数:密码更改期限前的警告日期::密码过期的宽限时间:账户有效期:保留字段
/etc/group 用户组信息格式:
组名:密码:组ID:成员
user_add指令格式:
user_add <用户名> [用户id] [组id] [用户描述] [宿主目录] [登录shell]
示例:user_add tomato -- 添加一个叫tomato的用户,其默认的宿主目录为/var/run/tomato,登录shell为/bin/false,即禁止该用户登录
九、group_add_user
添加用户到对应的组,格式如下:
group_add_user
十、group_add
添加一个组,格式如下:
group_add
十一、append
append() {local var="$1"local value="$2"local sep="${3:- }"eval "export ${NO_EXPORT:+-n} -- \"$var=\${$var:+\${$var}\${value:+\$sep}}\$value\""
}
NO_EXPORT这个变量的值为1,上面这个append函数可以为一个变量添加新的值,如果不提供第三个参数作为分隔符的话,默认使用空格作为分隔符
十二、list_contains
list_contains() {local var="$1"local str="$2"local valeval "val=\" \${$var} \""[ "${val%% $str *}" != "$val" ]
}
该函数用于判断一个字符串是否存在于另一个字符串中,若存在则返回1,否则返回0

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
