lxc 0.8.0 lxcubuntu 脚本

getopt的用法

单个字符,字符后面接一个冒号说明后面跟随一个选项参数,字符后面接两个冒号说明后面跟随一个可有可无的选项参数。例如,一个选项字符 "x" 表示选项 "-x" ,选项字符 "x:" 表示选项和其参数 "-x argument",选项字符 "x::" 表示选项 x 的参数是可选的(“::” 是 GNU 增加的,不一定在所有的UNIX 系统下都可以使用)

a:b::c,表示a带一个参数,b可选,c不带参数

-o 表示后面带的短命令

options=$(getopt -o a:b:hp:r:xn:FS: -l arch:,bindhome:,help,path:,release:,trim,name:,flush-cache,auth-key: -- "$@")

a:b:hp:r:xn:FS:  注意hp不是一体的 应该这么看 h p:

$@ 与$*同义,但是每个参数都是一个独立的""引用字串,这就意味着参数被完整地传递,
并没有被解释和扩展.这也意味着,每个参数列表中的每个参数都被当成一个独立的
单词.

-- "$@" 还不清楚是个什么用法

getent passwd $bindhome

读取bindhome 的密码数据库,这里bindhome是用户名?

如果没有指定flushcache 这个值默认为0

 flock -n -x 200

获得文件锁,-n 表示不等,-x 表示排他锁 200为fd 但是这个fd怎么指定的?

install_ubuntu

      download_ubuntu $cache $arch $release

             cache 为/var/cache/lxc/$release 

      copy_ubuntu

原文地址:https://www.cnblogs.com/zhangzhang/p/2492248.html