首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >遍历包含字符串shell脚本的目录

遍历包含字符串shell脚本的目录
EN

Stack Overflow用户
提问于 2021-10-01 10:37:43
回答 1查看 60关注 0票数 1

我有一组目录,现在有10个目录名为client-1, client-2,..., client-10,1个目录名为nestjs-wrapper

我想遍历client目录,输入每个目录并在每个目录中触发npm installnode index.js

我可以手工完成,但是将来客户的数量可能会增加,所以我想自动化这个过程。

所以流量应该是这样的:

在父目录中的node index.js

  • cd

  • ,我想激发nvm use,以确保我有所需的节点版本

  • ,然后cd进入每个目录,将npm install & directory

  • run返回到父目录,直到包安装在每个客户端directory

  • run docker-compose up中,从父目录分离出

  • cd到nestjs包装,并以监视模式使用npm run start:dev

启动它。

这是尝试的开始,它在client目录中安装包,现在我需要做其他的流:

代码语言:javascript
复制
pattern="/home/dario/my-folder/client"
for _dir in "${pattern}-"[[:digit:]]*; do
[ -d "$_dir" ] || continue;
pushd "$_dir" && npm install;
done 

我想从分离终端中的父目录启动docker-组合。为此,我刚刚创建了一个名为start-docker.sh的新脚本,其中只有docker-compose up

然后,在父目录中打开一个单独的dir (一个不命名为client-),并在其中运行npm run start:dev

所以它会是这样的:

代码语言:javascript
复制
pattern="client"
for _dir in "${pattern}-"[[:digit:]]*; do
[ -d "$_dir" ] || continue;
pushd "$_dir" && npm install && node index.js;
popd;
done
gnome-terminal -- ./start-docker.sh;
pushd nestjs_wrapper && npm run start:dev;

这就成功了,我换回了相对路径名。首先,我遍历所有的client目录并安装这些包,然后我会打开docker并在监视模式下启动包装器。

EN

回答 1

Stack Overflow用户

发布于 2021-10-29 08:59:59

在这些评论的输入之后,下面是工作解决方案:

代码语言:javascript
复制
pattern="client"
for _dir in "${pattern}-"[[:digit:]]*; do
[ -d "$_dir" ] || continue;
pushd "$_dir" && npm install && node index.js;
popd;
done
gnome-terminal -- ./start-docker.sh;
pushd nestjs_wrapper && npm run start:dev;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69404490

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档