问题标签 [file-globs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
loops - Ansible - 带有_fileglob的循环 - become_user不工作 - 在源机器上运行操作
环境为:Ansible 1.9.4或1.9.2,Linux CentOS 6.5
我有一个角色构建:
$ cat 角色/build/defaults/main.yml:
$ cat 角色/构建/任务/main.yml
在我的工作区:主机文件(库存)包含:
site.yml(剧本)包含:
我正在运行以下命令:
我收到以下错误,由于某种原因,在使用Ansible循环时成为 Ansible 中的用户:with_fileglob 不使用~ (主目录)的confman用户(在变量{{ build_user }}中设置,而不是那个,它正在挑选我自己的用户 ID ( c123456 )。
在调试操作的控制台输出中,很明显用户(由于 become_user)是 confman 并且 tools_dir 变量的值是 ~/tools。
根据上面的错误,它为变量项尝试的文件是/user/home/c123456/tools/vmwaretools-lib-1.0.8-SNAPSHOT/lib/insecure_private_key但我的用户 ID 的主目录中没有这样的文件。但是,对于用户 confman 的主目录,该文件确实存在。
即存在以下文件。
所有,我想要的是在 ~confman/tools/vmwaretools-lib-*/.. 包含私钥文件的位置迭代这些文件并更改权限,但使用“ with_fileglob ”成为_user在操作期间设置用户不起作用.
如果我在 tasks/main.yml 中注释掉with_fileglob部分并使用/取消注释with_items部分,那么它 ( become_user ) 工作正常并选择 ~confman (而不是 ~c123456) 并给出以下输出:
我发现的一件奇怪的事情是,目标机器(server01.project.jenkins)上没有用户 c123456,这告诉我with_fileglob正在使用源/本地/主 Ansible 机器(我正在运行 ansible-playbook 命令)要找到 GLOB 模式(而不是在 server01.project.jenkins 服务器上通过 SSH 查找/运行它),确实在本地/源 Ansible 机器上,我以 c123456 身份登录。奇怪的是,在 OUTPUT 中,它仍然显示目标机器,但根据上面的输出,模式路径来自源机器。
任何想法!我在这里缺少什么?谢谢。
PS: -我不想设置 tools_dir: "~{{ build_user }}/tools" 或硬编码它,因为用户可以在命令行传递tools_dir变量(同时使用 -e / --extra- 运行 ansible-playbook 命令变量“tools_dir=/production/slave/tools”
- 进一步研究它,我发现with_fileglob是用于迭代的本地文件列表,使用 shell fileglob 表示法描述(例如,/playbooks/files/fooapp/*)然后,我应该使用什么来迭代目标/远程服务器(server01 .project.jenkins 在我的例子中)使用模式匹配(fileglob)?
javascript - How do gulp pattern recursive work **/*
i started to use gulp, i have a little difficulty understand how globs work in gulp.
Why do **/*
copy all directory structure(how it work)
javascript - 使用 glob 匹配缩小的 JavaScript 文件和 html 文件
我正在尝试删除所有文件,除了我的缩小的 JavaScript 文件,所有这些文件都具有 .min 后缀,以及所有 .html 文件。这是我目前拥有的:
这最终会删除所有 .js 文件,包括缩小的文件,但保留 .html 文件。我该如何修改它以删除除带有 .min 后缀的 JavaScript 文件和 .html 文件之外的所有文件?
ansible - How to make Ansible with_fileglob include hidden files?
I'm using the following task in my Ansible script to copy all files from a local data folder to the server:
This works fine, except for that it skips hidden files (such as .htaccess
).
Does anybody know how I can make with_fileglob
also include hidden files?
ansible - ansible 循环遍历结果并查找文件
我正在使用 ansible 来配置 10-20 个 linux 系统。我有一组工具,我在我的库存文件中定义了版本,如:
现在,在我的播放 yml 文件中,我想遍历它们并拥有必要的安装逻辑。如:
调试工具循环
在我的情况下,{{tools.tool}}/{{tools.version}} 有一个 tgz 文件,我需要在远程位置取消存档。你知道怎么做吗?我试过这些:
但没有一个奏效。谢谢您的帮助。
ansible - 如何以字母顺序运行 Ansible with_fileglob?
我正在尝试构建一个系统,该系统将按字母顺序包含目录中的任务。假设我在一个目录中有以下文件:
我希望 ansible 按顺序(01、02、03 等)包含这些任务。在测试 fileglob 是否正常时,我运行了以下命令:
并以随机顺序获取输出:
我正在努力想出如何对文件通配符进行排序。我希望避免循环中的 set_fact 任务来创建数组、另一个要排序的任务和另一个包含文件的任务。有没有我想念的更有效的方法?
编辑:感谢 Zeitounator,我有一个最终的工作代码:
每个任务文件都很简单:
以正确的顺序完美输出!
c++ - 如何使用 c++ 98 在 linux 中进行 glob 文件名模式匹配
下面是一段代码,我试图从提供的目录路径中查找具有匹配模式的文件。
期望列出所有具有模式匹配的文件,例如在“/usr/local”路径下,存在以下文件 abc.txt axy.txt bcd.txt azz.txt bby.txt
使用模式匹配代码,我期待以下输出
linux - 从文件中获取文件 glob 并找到这些文件
我有一个名为“file.txt”的文件,它包含 glob。内容:
我需要从文件中获取这些扩展名,然后在当前目录中找到包含这些 glob 的文件(最好使用 find,其他任何东西也可以)。
我用了
但我收到此错误:
使用 Ubuntu