linux BASH:如何创建最佳循环,提取存档,进入提取的目录,并执行里面的命令?

vxbzzdmp  于 2022-11-02  发布在  Linux
关注(0)|答案(1)|浏览(96)

我搜索一个最佳循环来提取目录中的所有存档,进入每个目录并执行脚本。但我的脚本不工作:


# !/bin/bash

    for file in ./$file.tar.gz;
        do
            tar -xvf "$file"
            cd "${file%.tar.gz}" || exit
            npm install
            npm link
        done
    echo "it's ok"
6jjcrrmo

6jjcrrmo1#

问题是您忘记改回基目录:


# !/usr/bin/env bash

base_dir="$PWD"
for file in *.tar.gz; do
  cd -- "${base_dir}"
  tar xvf "$file"
  cd -- "${file%.tar.gz}" || continue
  npm install
  npm link
done

相关问题