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 

四、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


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

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部