我有以下文件和文件夹:
./图像./新图像./ids.txt
在./images中,我有很多图片,例如12345.jpg在./ids.text中,我有一个每行一个的id列表,如下所示:
12345 67890 abc德fghijk等
我尝试在终端中运行代码,检查ids.txt中的ID,然后如果它将ID与图像I ./images匹配,则将匹配的图像复制到./new_images。
下面是我的代码:
img_dir=./images
new_img_dir=./new_images
if [ ! -d $new_img_dir ]
then
mkdir $new_img_dir
chmod -R 755 $new_img_dir
fi
while IFS= read -r id; do
find $img_dir -maxdepth 1 -iname "$id.*" -print -exec cp -v {} $new_img_dir \;
if [ $? -eq 0 ]; then
echo "ID: $id"
echo "Match found and copied to $new_img_dir"
else
echo "No match found for ID: $id"
fi
done < "ids.txt"
我得到的回应是:
ID:12345找到匹配项并复制到./new_images
但映像永远不会复制到./new_images
有谁能帮我看看我的代码,看看我做错了什么吗?
非常感谢。
1条答案
按热度按时间um6iljoc1#
这应该行得通: