在puppet中使用exec命令在Linux中创建别名

时间:2013-11-06 20:34:57

标签: puppet

假设我想为某些命令创建别名(例如ls命令)

到目前为止,我已经完成了:

class alias{
        exec { "alias1":
        command => "alias aliasname='ls'",
        user => root,
}
}

我将这些行添加到site.pp:

执行{path => “/ USR / BIN”}

包含别名

它说“无法找到命令'别名'”。所以我不确定为什么它不起作用。我这样做完全错了吗?或者还有其他方法可以制作这样的别名吗?是的,我真的很擅长这个:)

2 个答案:

答案 0 :(得分:2)

Alias是内置的shell,不存在于PATH中。别名仅对当前会话有效,因此即使您的命令有效,它也只会为执行的shell设置别名,然后退出(从而再次取消设置别名)。持久化别名的方法是将它们写入shell在启动时读入的文件。 您应该使用puppet stdlib中的文件/模板或file_line

/etc/profile.d/可以是一个放置内容的好地方,如果你想让别名全局(适用于所有人)。如果不是 .bashrc 效果不错(尽管有一个使用单独文件的惯例 .alias / .bash_alias )。

答案 1 :(得分:1)

这是错的。要求为〜/ .bashrc或/etc/profile.d/youname.sh添加别名定义 别名是bash的命令所以需要call command => “bash -c \”alias aliasname ='ls'\“”,