如何递归地转到每个文件夹并执行具有相同名称的 shell 脚本?
How can I recursively go to every folders and execute shell script with the same name?
我有这个目录。
.
├── animation
│ ├── animation-events
│ │ ├── app.js
│ │ ├── app.mustache.json
│ │ ├── create_view.sh
│ │ └── assets
│ │ └── dummy_character_sprite.png
│ └── change-frame
│ ├── app.js
│ ├── app.mustache.json
│ ├── create_view.sh
│ └── assets
│ └── dummy_character_sprite.png
├── app.css
├── app.mustache
├── bunch_of_functions.js
├── decorators.js
├── create_all_views.sh
└── displaying-a-static-image
├── app.js
├── app.mustache.json
├── create_view.sh
└── assets
└── piplup.png
我想让 create_all_views.sh
执行子目录中的所有 create_view.sh
。我怎样才能实现这样的目标?
正如您在 Ubuntu 中一样,您拥有 find
的 GNU 实现,
其中有 -execdir
选项,
你可以这样做:
find path/to/dir -name create_view.sh -execdir ./create_view.sh \;
也就是说,
对于它在目录树中找到的每个 create_view.sh
文件,
它将在该文件的目录中执行 ./create_view.sh
。
我有这个目录。
.
├── animation
│ ├── animation-events
│ │ ├── app.js
│ │ ├── app.mustache.json
│ │ ├── create_view.sh
│ │ └── assets
│ │ └── dummy_character_sprite.png
│ └── change-frame
│ ├── app.js
│ ├── app.mustache.json
│ ├── create_view.sh
│ └── assets
│ └── dummy_character_sprite.png
├── app.css
├── app.mustache
├── bunch_of_functions.js
├── decorators.js
├── create_all_views.sh
└── displaying-a-static-image
├── app.js
├── app.mustache.json
├── create_view.sh
└── assets
└── piplup.png
我想让 create_all_views.sh
执行子目录中的所有 create_view.sh
。我怎样才能实现这样的目标?
正如您在 Ubuntu 中一样,您拥有 find
的 GNU 实现,
其中有 -execdir
选项,
你可以这样做:
find path/to/dir -name create_view.sh -execdir ./create_view.sh \;
也就是说,
对于它在目录树中找到的每个 create_view.sh
文件,
它将在该文件的目录中执行 ./create_view.sh
。