Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用puppet中的exec命令在Linux中创建别名_Puppet - Fatal编程技术网

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

使用puppet中的exec命令在Linux中创建别名,puppet,Puppet,假设我想为某个命令(例如ls命令)创建别名 到目前为止,我已经做了: class alias{ exec { "alias1": command => "alias aliasname='ls'", user => root, } } 我在site.pp中添加了以下行: Exec{path=>“/usr/bin”} 包括别名 它说“找不到命令‘别名’”。所以我不知道为什么它不起作用。我这样做完全错了吗?或者有没有其他方法来制作这样的别

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

到目前为止,我已经做了:

class alias{
        exec { "alias1":
        command => "alias aliasname='ls'",
        user => root,
}
}
我在site.pp中添加了以下行:

Exec{path=>“/usr/bin”}

包括别名


它说“找不到命令‘别名’”。所以我不知道为什么它不起作用。我这样做完全错了吗?或者有没有其他方法来制作这样的别名?是的,我对这一点非常陌生:)

这是错误的。需要将别名定义添加到~/.bashrc或/etc/profile.d/youname.sh
alias是bash的命令,因此需要调用command=>“bash-c\”alias aliasname='ls'\”,

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

/如果您想使别名成为全局的(每个人都可以使用),etc/profile.d/可能是放置某些内容的好地方。如果没有,则.bashrc工作得足够好(尽管有使用单独文件.alias/.bash\u alias的惯例)