Automation 可移动文件

Automation 可移动文件,automation,ansible,devops,Automation,Ansible,Devops,我正在创建一个角色来部署Jira实例。我的问题是,如何将文件从一个目录移动到另一个目录,我尝试了以下方法: -名称:创建Jira安装目录 命令:mv“/tmp/atlassian jira software-{{jira_version}}-standalone/*“{{installation_directory}” 何时:未安装。stat.exists 但它不工作,我想将所有文件从一个目录复制到另一个目录,而不复制目录。来自: 命令不会通过shell处理,因此像$HOSTNAME这样的变量

我正在创建一个角色来部署Jira实例。我的问题是,如何将文件从一个目录移动到另一个目录,我尝试了以下方法:

-名称:创建Jira安装目录
命令:mv“/tmp/atlassian jira software-{{jira_version}}-standalone/*“{{installation_directory}”
何时:未安装。stat.exists
但它不工作,我想将所有文件从一个目录复制到另一个目录,而不复制目录。

来自:

命令不会通过shell处理,因此像
$HOSTNAME
这样的变量和像
“*”
”、
“|”
”;“
”&
这样的操作将不起作用。如果需要这些功能,请使用该模块

因此,您的问题在于
命令
模块没有扩展通配符
*
,正如您所期望的那样,您应该使用
shell
模块:

-名称:创建Jira安装目录
shell:“mv/tmp/atlassian jira软件-{{jira_version}}-standalone/*{{installation_directory}}”
何时:未安装。stat.exists

现在,请注意,您也可以通过使用来执行此操作,而不必求助于
命令
shell

-复制:
src:“/tmp/atlassianjira软件-{{jira_version}}-standalone/”
dest:“{{installation_directory}}”
遥控器:是的

是否抛出错误消息?jira_版本的值是多少?安装目录的
?请尝试删除引号。仅为澄清,您没有将文件从控制节点(ansible正在运行的位置)移动到远程主机?问题没有指定此移动是在远程节点还是在控制器节点上进行的,以及提供的任务有何问题?是否观察到任何错误?它没有达到预期的行为吗?我想将文件从远程主机上的一个dest移动到另一个dest,但此复制模块将复制整个目录,而不仅仅是其中的文件。如果您用斜杠结束目录,则不会这样做,如文档中所述:如果path是一个目录,则会递归复制它。在这种情况下,如果路径以“/”结尾,则仅将该目录的内部内容复制到目标。否则,如果不以“/”结尾,则复制包含所有内容的目录本身。