可以使用以下脚本实现:
#!/bin/bash
for dir in "$1"/*/; do
dir=${dir%*/} # remove the trailing "/"
echo "Entering directory: $dir"
cd "$dir" && echo "Action performed in $dir"
done
使用该脚本需要传递一个目录路径作为参数。例如,如果脚本名为 my_script.sh
,则可以执行以下操作:
./my_script.sh /path/to/parent/directory
该脚本会遍历指定目录下的所有子目录,使用转义字符 &&
在每个目录中执行所需的操作并输出消息。在下一个目录中执行操作之前,脚本会使用 cd
命令进入当前的目录以确保正确执行操作。
需要注意的是,在使用转义字符时,请确保在文件名中包含特殊字符,如空格或标点符号时,需要使用引号将其括起来。如果不这样做,则可能导致脚本无法正确解释文件名,并且可能会出现错误。