刚刚写了这样一个脚本,是递归dd文件的。我们都知道dd的速度是最快的。
如下:
#!/bin/bash
dd-r()
{
for i in `ls "$1"`
do
if [ -d "$1"/"$i" ]
then
mkdir -p "$2"/"$i"
dd-r "$1"/"$i" "$2"/"$i"
else
dd if="$1"/"$i" of="$2"/"$i" bs=10M oflag=direct,nonblock status=progress
fi
done
}
dd-r . '/run/media/root/Seagate Expansion Drive/youku2'
——————————————————————————————————————————————————————
然而,这个脚本还是再完善一下好了。
比如,源目录是dir1,目标目录是dir2,那么高手看看如何让他在目标位置自动创建dir1。
我之前曾经试过,
mkdir -r "$2"/"`basename "$1"`"/"$i"
of="$2"/"`basename "$1"`"/$i
这个选项,然而,却意外的失败了。
对于这种递归,我不是特别的懂咋回事。
高手帮我看看,如何让他在目标位置自动创建源目录,就跟fastcopy似的。
fastcopy的速度比不上dd,差的很多。
求助:递归拷贝文件如何在目标目录下自动建立原目录
-
- 帖子: 197
- 注册时间: 2015-12-23 16:20
- 系统: ubuntu 16.04
- lilydjwg
- 论坛版主
- 帖子: 4250
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 求助:递归拷贝文件如何在目标目录下自动建立原目录
噗,谁告诉你的呀。还加上 direct 的标志呢,在写端,倒是问题不大。
cp -r --reflink src dst 不好吗?cp 有那么多选项,还能帮你保留文件权限和时间戳等信息呢。
真要写 shell 脚本的话,shellcheck 了解一下?
cp -r --reflink src dst 不好吗?cp 有那么多选项,还能帮你保留文件权限和时间戳等信息呢。
真要写 shell 脚本的话,shellcheck 了解一下?
- 百草谷居士
- 帖子: 3935
- 注册时间: 2006-02-10 16:36
- 系统: debian12/xubuntu2404
Re: 求助:递归拷贝文件如何在目标目录下自动建立原目录
靠!你发帖是递归,还是循环?搞了一长串!
debian 12.5 / xubuntu 24.04
为何热衷于搞发行版的多,搞应用程序开发的少?Linux最多余的就是各种发行版,最缺的就是应用程序,特别是行业应用程序。
为何热衷于搞发行版的多,搞应用程序开发的少?Linux最多余的就是各种发行版,最缺的就是应用程序,特别是行业应用程序。
- oneleaf
- 论坛管理员
- 帖子: 10446
- 注册时间: 2005-03-27 0:06
- 系统: Ubuntu 12.04
Re: 求助:递归拷贝文件如何在目标目录下自动建立原目录
拷贝大量文件 rsync 才是最快的,不需要递归。
-
- 帖子: 197
- 注册时间: 2015-12-23 16:20
- 系统: ubuntu 16.04