这是命令 fai-class,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
fai-class - 使用文件和脚本定义类。
概要
fai级 [选项] 目录 类文件
商品描述
此命令仅由 FAI 内部调用,而不由用户直接调用。
fai-class 执行 DIRECTORY 中的脚本来定义类。 所有的类都被写入
CLASSFILE,每个类在一个单独的行上。 对这两个参数使用绝对路径。 全部
执行匹配“^[0-9][0-9]*”(以两位数字开头)的脚本或可执行文件
按字母顺序。 他们可以通过将类的名称写入来定义类
标准输出。 类可以用空格分隔或写在一行上。 所有开始的行
带有“#”的是注释行,将被忽略。
以“.sh”结尾的Shell脚本是源代码,可以通过设置变量来定义类
$新班级。 这对于无法控制标准输出的脚本很有用。 变量是
这些脚本中定义的内容可用于 DIRECTORY 中的其他脚本,但它们不可用
导出到调用 fai-class 的 shell。 这些脚本可以通过编写来定义变量
文件 $LOGDIR/additional.var 的定义,该文件将来自以下
任务。
所有脚本都可以通过将类写入文件来定义其他类
$LOGDIR/附加类。 这些类是在所有脚本执行后定义的。 这个
临时文件将在使用后被删除。
类的顺序很重要,因为它定义了类的优先级
从低到高。 首先,定义了类 DEFAULT。 然后执行所有脚本来定义
类。 之后,添加文件 $LOGDIR/additional-classes 中的类。 然后,
添加具有主机名的文件中的所有类。 然后由变量定义的类
使用 ADDCLASSES。 此变量必须是逗号分隔的类列表。 你可以
在内核命令行上定义这个变量。
最后,定义了具有主机名和 LAST 的类。
包含类名的文件中的每一行都以换行符结尾,这一点很重要。 如果
文件的最后一行缺少换行符,无法添加此类。
每个脚本的退出代码都写入 LOGDIR 中的文件 status.log。
配置
-d 创建调试输出。
-h 显示选项的帮助、版本和摘要。
-T 测试是否多次定义 CLASSFILE 中的类。 这不应该发生。
在定义类之后执行测试。
-t 目录
从目录 tmpdir 中读取文件附加类。 默认值为
/tmp/fai/。
-v 创建详细输出。
示例
在 FAI 中,fai-class 的使用方式如下:
# fai-class /fai/class /tmp/fai/FAI_CLASSES
然后将所有类的列表分配给变量类。
类=`cat /tmp/fai/FAI_CLASSES`
示例 用于 脚本
这是脚本 01alias:
#! / bin / sh的
catnc() { # cat 但没有注释行
grep -v "^#" $1
}
# 大写的回声架构
dpkg --print-architecture | tr /az/ /AZ/
uname -s | tr /az/ /AZ/
# 所有主机名为 ant?? 使用文件 anthill 中的类
案例 $HOSTNAME 在
蚂蚁??) catnc 蚁丘;;
ESAC
# 一个 Beowulf 集群; 除主节点外的所有节点
# 使用文件类/原子中的类
案例 $HOSTNAME 在
atom00) 回声 BEOWULF_MASTER ;;
原子??) catnc 原子;;
ESAC
# 如果主机属于 C 类子网 123.45.6.0 使用类 NET_6
案例 $IPADDR 在
123.45.6.*)回声NET_6;;
ESAC
另一个例子:
脚本 24nis:
#! / bin / sh的
# 如果定义了 YPDOMAIN,则添加 NIS 和 NIS 域名
如果 [ -n "$YPDOMAIN" ];那么
echo "NIS $YPDOMAIN" | tr /.az-/ /_A-Z_/
其他
回声非尼斯
fi
您可以通过将其附加到内核来在内核命令行上定义类:
添加类=CLASS1、CLASSX、CLASS3
附注
所有类名都应该用大写字母书写(除了主机名的类)。
不要使用破折号,使用下划线。 仅使用 DIRECTORY 中的可执行脚本。
CLASSFILE 在写入之前被删除。 脚本不应直接写入 CLASSFILE。
LOGDIR 不应该对每个人都可写。
使用 onworks.net 服务在线使用 fai-class