目录
一、config_load
config_load <package>
package为/etc/config/下的某个配置文件
二、config_get
config_get <variable> <section> <option> [default] -- 将值保存到variable中,如果定义了defaul(自定义变量),则当待获取的对象不存在时返回default
config_get <section> <option> -- 命令中调用该指令时可直接打印对象值
三、config_set
config_set <section> <option> <value> -- 将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> <user>
十、group_add
添加一个组,格式如下:
group_add <group> <group id>
十一、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 val
eval "val=\" \${$var} \""
[ "${val%% $str *}" != "$val" ]
}
该函数用于判断一个字符串是否存在于另一个字符串中,若存在则返回1,否则返回0