我正在编写一个脚本,该脚本将自动为NIS客户端配置正确的设置。
我正在尝试设置/etc/nsswitch.conf文件,我想用我的设置覆盖已经存在的所有内容。
现在我的问题是,我该怎么做?如何直接从脚本将大约20行设置粘贴到客户端的nsswitch.conf文件中?
我知道我可以这样做:

echo "line 1" > /etc/nsswitch.conf
echo "line 2" >> /etc/nsswitch.conf

但这是一个丑陋的方法,我希望有更好的方法来实现这个目标

最佳答案

我将使用cathere-doc语法:

cat <<EOF > /etc/nsswitch.conf
group:          compat
shadow:         compat

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4
...
EOF

上面的语句将用第一行和EOF之间的内容覆盖或创建文件。在上面的形式中,bash甚至可以扩展group: $group这样的变量。如果不需要,请使用<<'EOF'(注意'周围的单引号)

关于bash - 如何使用bash脚本将多行粘贴到文件中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17260416/

10-09 06:04