shell - 在多个项目上迭代类似的命令
问题描述
如果我正在尝试执行类似kubectl apply -f dir1/subdir1/deployment.yml
, 的命令并且我有subdir1
,subdir2
等,我怎样才能一次为所有这些命令运行该命令?
我试过kubectl apply -f dir1/*/deployment.yml
并将所有的都传递deployment.yml
给单个-f
标志,使其无效,因为该标志接受单个参数。
我也试过kubectl apply -f dir1/{subdir1,subdir2}/deployment.yml
没有运气。
PS:如果这很重要,我将 zsh 用于我的 shell 和 oh-my-zsh+p10k。
解决方案
与命令无关的解决方案zsh
:
for d (dir1/*/deployment.yml) kubectl apply -f "$d"
这使用了一种zsh
特定的循环替代形式for
,通常写为
for d in dir1/*/deployment.yml; do kubectl apply -f "$d"; done
(尽管这与只运行kubectl
一次并让它迭代配置本身是不同的。)
推荐阅读
- python-3.x - 使用 Flask、SocketIO 创建倒数计时器
- c# - c# Firesharp - 如何更新对象的单个值?
- json - 如何在vim中选择最大有效的封闭json
- reactjs - 带有 useEffect 的无限循环
- java - 如何处理spring事件图?
- python - iShares SP 500 ETF 的 Excel 文件有什么问题?
- python - 如何在其窗口中对齐 matplotlib 图表?
- python - 如何在win32api中打印之前设置一个窗口?
- php - 如何在 Laravel/OctoberCMS 网站的单独项目的子目录中设置/访问页面?
- wildfly - 在 Wildfly 中,/子系统是什么?