【发布时间】:2020-04-15 16:48:51
【问题描述】:
我的 find ... while 循环有问题。我尝试查找所有以 Hello 开头的文件夹。在每个 Hello 文件夹中都有一个文件夹 0,所以我想更改为该文件夹。但一定有问题:
find -maxdepth 1 -name "Hello.*" -type d|while read dir
do
cd "$dir"/0/
pwd
resourcenfolder=$(ls -d *)
scp -oStrictHostKeyChecking=no -r ${WORKSPACE}/"$resourcenfolder" root@${TARGET_IP}:/var/navdb/hwr/MS8/
cd ../..
done
我遇到了一个非常奇怪的错误。这是do之后的第一个cd:
cd: command not found
【问题讨论】:
-
好的,我添加了 maxdepth 1 。所以至少这应该有效。但其他一切都正确吗?
-
这很奇怪。请问include the complete error messages好吗?
-
使用
"Hello*"。如果Hello后面总是跟.,则只使用"Hello.*"。 -
你应该添加
-mindepth 1,否则第一个条目是.另外使用cd -而不是cd ../..