gpt4 book ai didi

linux - 将文件移动到它们自己的目录中

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:40:44 26 4
gpt4 key购买 nike

我有几百个 rar 文件。我想为每个 rar 文件创建一个目录,然后将文件移动到新创建的目录中。

这是我用来创建 rar 的代码

#!bin/bash
for f in *; do
rar a -s -m5 "${f%.*}.rar" "$f";
done

这是我用来移动文件的代码。

#!/bin/bash
for i in *.rar; do
dir=$(echo "$i" | \
sed 's/\(.\)\([^ ]\+\) \([^ ]\+\) - \(.*\)\.pdf/\1\/\1\2 \3/')
dir="DestinationDirectory/$dir"
mkdir -p -- "$dir" && mv -uv "$i" "$dir/$i"
done

问题在于它创建了具有扩展名的目录。

ie: file irclog3_26_198.rar is moved into folder /DestinationDirectory/irclog3_26_1988.rar/irclog3_26_1988.rar

我希望创建的文件夹忽略 .rar 并只使用文件名。

最佳答案

怎么样:

dir="${dir%.rar}"
mkdir -p -- "$dir" ...

abs 阅读更多相关信息.

关于linux - 将文件移动到它们自己的目录中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11701933/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com