linux如何将某个文件夹移动到另一个文件夹下

 更新时间:2024年06月25日 10:16:01   作者:HS_zhangjiong  
这篇文章主要介绍了linux如何将某个文件夹移动到另一个文件夹下问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

linux将某个文件夹移动到另一个文件夹下

若要将某个文件夹整体移动到其它文件夹下,

可以使用如下命令:

mv dir1 dir2

比如我要将上一级目录下的 data 文件夹移动到当前目录下,

可以使用下面命令:

mv ../data ./

说明:

其中 dir1 参数为 ../data,即上级目录下的 data 文件夹;

  • dir2 参数为 ./,即当前目录。
  • 文章知识点与官方知识档案匹配,可进一步学习相关知识

linux终端命令(移动,复制,删除)

1.移动文件夹部分图片

# 移动文件夹中的前10张.jpg图片到目标文件夹
# 使用ls和head命令来选取前10个文件
ls "$SOURCE_FOLDER"/*.png | head -10 | xargs -I {} mv {} "$DESTINATION_FOLDER"
ls "/root/autodl-tmp/DF2K/DF2K_train_HR"/*.png | head -2650 | xargs -I {} mv {} "/root/autodl-tmp/Flickr2K/Flickr2K_HR" 

2.移动文件夹

如果您想将名为FolderName的文件夹从当前目录移动到/path/to/destination/目录下,可以使用以下命令:

mv FolderName /path/to/destination/
mv datasets/DIV2K /root/autodl-tmp

3.移动文件夹内的文件mv

以下命令将当前目录下名为sourceFolder的文件夹内的所有文件移动到名为destinationFolder的目录下。

注意,这不会移动sourceFolder内的子目录,只会移动文件。

mv sourceFolder/* destinationFolder/
mv /root/autodl-tmp/DF2K/Flickr2K_1061-1590/* /root/autodl-tmp/DF2K

mv /root/autodl-tmp/Flickr2K/Flickr2K_1-530/* /root/autodl-tmp/Flickr2K/Flickr2K_HR

4.移动文件夹中部分文件

# 移动文件夹中命名排序后的第10到第20个.jpg图片到目标文件夹
# 使用ls, tail和head命令进行选择
ls "$SOURCE_FOLDER"/*.png | head -20 | tail -11 | xargs -I {} mv {} "$DESTINATION_FOLDER"

ls "/root/autodl-tmp/Flickr2K/Flickr2K_HR"/*.png | head -300 | tail -201 | xargs -I {} mv {} "/root/autodl-tmp/Flickr2K/200-300"

5.删除指定文件rm

# 指定目标文件夹路径
TARGET_FOLDER="/path/to/target/folder"
rm -r TARGET_FOLDER

6.列出目标文件夹中的所有文件

然后使用管道命令(head和tail)选取第5到第10个文件进行删除

这个命令首先列出TARGET_FOLDER中的所有文件,然后使用head命令选出前10个文件,紧接着用tail命令从这10个文件中选出最后6个(也就是第5到第10个文件),最后通过xargs命令和rm将这些文件删除。

ls "$TARGET_FOLDER" | head -600 | tail -301 | xargs -I {} rm "$TARGET_FOLDER"/{}
ls "/root/autodl-tmp/Flickr2K/301-700" | head -600 | tail -301 | xargs -I {} rm "/root/autodl-tmp/Flickr2K/301-700"/{}

7.删除该文件夹中最早的5个文件

# 使用ls命令列出所有文件,按创建时间排序 (-t 选项),然后使用head选择前5个,最后通过xargs传递给rm命令进行删除
ls -t "$TARGET_FOLDER" | tail -n +6 | xargs -I {} rm -- "$TARGET_FOLDER"/{}
ls -t "/root/autodl-tmp/Flickr2K/301-700" | tail -n +301 | xargs -I {} rm -- "/root/autodl-tmp/Flickr2K/301-700"/{}

8.复制文件cp

# 复制所有.txt文件
cp /path/to/source/*.txt /path/to/destination/

# 使用ls和管道命令来选择文件段并复制文件
ls "$SOURCE_DIR" | head -10 | tail -6 | xargs -I {} cp "$SOURCE_DIR"/{} "$DESTINATION_DIR"/

ls "/root/autodl-tmp/Flickr2K/Flickr2K_HR" | head -500 | tail -400 | xargs -I {} cp "/root/autodl-tmp/Flickr2K/Flickr2K_HR"/{} "/root/autodl-tmp/Flickr2K/301-700"/

9.rsync工具

rsync工具本身具有从中断处继续或重试传输的能力,这是因为它根据文件内容的校验块来检查和传输文件。如果传输过程中断,再次运行相同的rsync命令将会继续传输未完成的部分,而不是从头开始。

然而,为了确保可以恢复中断的传输并获得实时进度信息,您可以添加-P(或--partial --progress)选项。--partial使rsync在中断的情况下保留已传输的部分文件,而--progress会显示传输进度。

因此,如果您想确保在任何网络中断之后都可以继续传输,可以修改您的命令如下:

rsync -avzP -e 'ssh -c aes128-gcm@openssh.com' /path/to/local/file username@server:/path/to/remote/directory

rsync -avzP -e 'ssh -c aes128-gcm@openssh.com' /mnt/g:/d/Common/Flickr2K_LR_bicubic/X2.zip root@region-8.autodl.pro:/root/autodl-tmp/Flickr2K/Flickr2K_LR_bicubic

只需简单地再次运行同一命令,rsync就会检查目标位置已有的文件部分,并只传输缺失的数据块。

10.删除文件夹

rm -rf /path/to/MyFolder
rm -rf /root/autodl-tmp/Flickr2K/Flickr2K_LR_bicubic/X2.zip

rm -rf /root/autodl-tmp/DF2K/DF2K_train_LR_bicubic/Flickr2K_LR_bicubic.zip

向服务器(Linux)传输大文件并下载——阿里云盘

cd aliyunpan  #进入目录
./aliyunpan #启动aliyunpan
login #登录账号

可以在aliyunpan交互指令界面指定将从云盘下载的文件存放在哪个目录下

config set -savedir save_path #save_path是你服务器想要将文件存放的地址路径
config set -savedir /root/autodl-tmp/DF2K/
download xxx
Ctrl + C退出该aliyunpan

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

最新评论