foreach-folder
v1.1.0
Published
A CLI utility to execute the same command in every subfolder of the current folder.
Downloads
4
Maintainers
Readme
foreach-folder
Purpose
This command-line utility executes the same command for every subfolder of the current folder.
The stdout
and stderr
of every execution is shown.
If the command execution fails for one subfolder, the execution goes to the next subfolder and continues.
Installation
- Execute:
npm install -g foreach-folder
yarn global add foreach-folder
(if you have yarn installed)
Usage
Open the Terminal / Prompt
Navigate to the target folder
execute
forfo "<command>"
Example
Let's pretend you have this folder structure:
parent
|----child1
|----child2
and you want to create a x.txt
file in every subfolder.
Navigate to the folder parent
with:
cd <path>/<to>/parent
Execute:
forfo "touch x.txt"
Now the folder structure is:
parent
|----child1
| |----x.txt
|----child2
|----x.txt
Use cases:
You have a Node project in every subfolder, and you want to install the dependencies of every project:
forfo "yarn install"
You have a group of directories with different Git repositories, and you want to pull them all in once:
forfo "git pull"
You want to list all the depth-0 elements in all the subfolders:
forfo ls
Or, for Windows:
forfo dir
(For a more powerful folder explorer, use the the tree
utility instead).
WARNING
The command is executed for every folder SEQUENTIALLY, i.e. before executing for folder2, the command must have finished its execution in folder1, etc.
That means you cannot use this tool to run both a server and a client app in a full-stack application: the command will be stuck in the execution of - for example - the server until the server is shutdown, thus the client will never start.
Parallel execution is scheduled for the next version.
Contributions:
Any advise or contribution is welcome.