Linux中cp文件或目录时如何显示进度?

Linux中cp文件或目录时如何显示进度?

用法:cp [选项]... [-T] 源文件 目标文件
 或:cp [选项]... 源文件... 目录
 或:cp [选项]... -t 目录 源文件...
将源文件复制至目标文件,或将多个源文件复制至目标目录。

长选项必须使用的参数对于短选项时也是必需使用的。
&">nbsp; -a, --archive                 等于-dR --preserve=all
      --backup[=CONTROL         为每个已存在的目标文件创建备份
  -b                            类似--backup 但不接受参数
      --copy-contents           在递归处理是复制特殊文件内容
  -d                            等于--no-dereference --preserve=links
  -f, --force                   如果目标文件无法打开则将其移除并重试(当 -n 选项存在时则不需再选此项)
  -i, --interactive             覆盖前询问(使前面的 -n 选项失效)
  -H                            跟随源文件中的命令行符号链接
  -l, --link                    链接文件而不复制
  -L, --dereference             总是跟随符号链接
  -n, --no-clobber              不要覆盖已存在的文件(使前面的 -i 选项失效)
  -P, --no-dereference          不跟随源文件中的符号链接
  -p                            等于--preserve=模式,所有权,时间戳
      --preserve[=属性列表      保持指定的属性(默认:模式,所有权,时间戳),如果可能保持附加属性:环境、链接、xattr 等
  -c                           same as --preserve=context
      --sno-preserve=属性列表   不保留指定的文件属性
      --parents                 复制前在目标目录创建来源文件路径中的所有目录
  -R, -r, --recursive           递归复制目录及其子目录内的所有内容
      --reflink[=WHEN]          控制克隆/CoW 副本。请查看下面的内如。
      --remove-destination      尝试打开目标文件前先删除已存在的目的地文件 (相对于 --force 选项)
      --sparse=WHEN             控制创建稀疏文件的方式
      --strip-trailing-slashes  删除参数中所有源文件/目录末端的斜杠
  -s, --symbolic-link           只创建符号链接而不复制文件
  -S, --suffix=后缀             自行指定备份文件的后缀
  -t,  --target-directory=目录  将所有参数指定的源文件/目录
                                           复制至目标目录
  -T, --no-target-directory     将目标目录视作普通文件
  -u, --update                 copy only when the SOURCE file is newer
                                 than the destination file or when the
                                 destination file is missing
  -v, --verbose                explain what is being done
  -x, --one-file-system        stay on this file system
  -Z, --context=CONTEXT        set security context of copy to CONTEXT
      --help            显示此帮助信息并退出
      --version         显示版本信息并退出

默认情况下,源文件的稀疏性仅仅通过简单的方法判断,对应的目标文件目标文件也被为稀疏。这是因为默认情况下使用了--sparse=auto 参数。如果明确使用--sparse=always 参数则不论源文件是否包含足够长的0 序列也将目标文件创文建为稀疏件。
使用--sparse=never 参数禁止创建稀疏文件。

当指定了--reflink[=always] 参数时执行轻量化的复制,即只在数据块被修改的情况下才复制。如果复制失败或者同时指定了--reflink=auto,则返回标准复制模式。

备份文件的后缀为"~",除非以--suffix 选项或是SIMPLE_BACKUP_SUFFIX环境变量指定。版本控制的方式可通过--backup 选项或VERSION_CONTROL 环境变量来选择。以下是可用的变量值:

none, off       不进行备份(即使使用了--backup 选项)
  numbered, t     备份文件加上数字进行排序
  existing, nil   若有数字的备份文件已经存在则使用数字,否则使用普通方式备份
  simple, never   永远使用普通方式备份

有一个特别情况:如果同时指定--force 和--backup 选项,而源文件和目标文件是同一个已存在的一般文件的话,cp 会将源文件备份。

我们可以使用cp命令的二个参数,示例如下:

cp -r -v dir1 dir2
cp -a -d -v dir1 dir2

时间: 2024-10-28 15:54:44

Linux中cp文件或目录时如何显示进度?的相关文章

linux中.* 匹配文件与目录注意事项

而问题的根本原因在于,使用.*在Linux下匹配文件和目录时,上级目录作为..会被匹配到. 而即使是这样,那也不会导致问题吧?但事实上并非如此,因为.*并不只会匹配当前的上级目录..,经过测试它还会依次匹配到上级的上级目录../... 正所谓无图无真相,下面是我的相关操作步骤,可以清楚的看到使用.*之后,直接修改了上级..与上级的上级../..目录属性. 因此,正确的做法,应该使用正则表达式 .[^.]* 来精确匹配当前目录下的隐藏文件. 最后,我想试一下rm和mv会造成什么样严重的后果,却发现

webview-在WebView中加载HTML页面时怎么显示进度对话框

问题描述 在WebView中加载HTML页面时怎么显示进度对话框 在程序中使用webview视图显示html页面.我想在页面加载时显示一个进度对话框.但是我加载页面后,没有显示进度对话框.我使用AsyncTask,进度对话框还是没有显示.我使用的以下代码: class DownloadAysnc extends AsyncTask<String String Void> { ProgressDialog progressDialog; @Override protected void onPr

Linux中的文件与目录操作利器mv命令使用解析

  mv 命令是一个与cp类似的命令,但是它并非创建文件或目录的复制品/副本.不管你在使用什么版本的Linux系统,mv 都默认安装在你的Linux系统上了. 用法:mv [选项]... [-T] 源文件 目标文件 或:mv [选项]... 源文件... 目录 或:mv [选项]... -t 目录 源文件... 将源文件重命名为目标文件,或将源文件移动至指定目录. 长选项必须使用的参数对于短选项时也是必需使用的. --backup[=CONTROL] 为每个已存在的目标文件创建备份 -b 类似-

如何在 Linux 中复制文件到多个目录中

在学习 Linux 的过程中,对于新手而言总是会使用几个命令来完成一个简单的任务.对正在熟悉使用终端的人这是很容易理解的行为.然而,如果你想要成为一个老手,学习我说的"快捷命令"会显著减少时间浪费. 在本篇中,我们会用一个简单的方法在 Linux 中用一个命令来将目录复制到多个文件夹中. 在 Linux 中,cp 命令常被用于从一个文件夹中复制文件到另一个文件夹中,最简单的语法如下: # cp [options-.] source(s) destination 另外,你也可以使用高级复

Linux中cp和scp命令的使用方法

  Linux为我们提供了两个用于文件copy的命令,一个是cp,一个是scp,但是他们略有不同. cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件 scp --- 主要是在不同的Linux系统之间来回copy文件 关于cp的具体用法: 命令基本格式: cp [OPTIONS] SOURCE DEST --- 从源路径copy文件到目的路径 cp [OPTIONS] SOURCE... DIRECTORY --- 将多个源文件copy到指定的目录(多个源文件用空格分隔)

Linux 命令(文件和目录管理 - zip/unzip)

简述 zip/unzip 是 Linux 中广泛使用的压缩/解压缩程序zip 命令用来将文件压缩为常用的 zip 格式扩展名为 .zipunzip 命令则用来解压缩 zip 文件. 简述 zip 命令介绍 命令选项 使用范例 unzip 命令介绍 命令选项 使用范例 zip 命令介绍 命令名称 zip 基本语法 zip [-aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$] [--longoption ...] [-b path] [-n suffixes] [-t date]

5 个在 Linux 中管理文件类型和系统时间的有用命令

对于想学习 Linux 的初学者来说要适应使用命令行或者终端可能非常困难.由于终端比图形用户界面程序更能帮助用户控制 Linux 系统,我们必须习惯在终端中运行命令.因此为了有效记忆 Linux 不同的命令,你应该每天使用终端并明白怎样将命令和不同选项以及参数一同使用. 在 Linux 中管理文件类型和设置时间 请先查看我们 Linux 小技巧系列之前的文章: 5 个有趣的 Linux 命令行技巧 给新手的 10 个有用 Linux 命令行技巧 在这篇文章中,我们打算看看终端中 5 个和文件以及

linux中在文件夹下新建文档属于写操作(w)还是执行(x)操作

问题描述 linux中在文件夹下新建文档属于写操作(w)还是执行(x)操作 众所周知,linux下文档和文件夹都有rwx操作,读鸟哥的私房菜中说不能在没有x权限的文件夹下执行一些命令,比如man,ll等,那在文件夹中新建文档是属于写操作还是执行操作? 解决方案 这要看你是怎样新建的这个文件,比如用 touch 来创建的文件,正常情况下就不会有x权限. 但如果你有执行gcc的权限,那么你用gcc编译一个自己写的c文件得到一个可执行执行程序时通常就有x权限了. 还有一些脚本文件,一般新建时用vi或e

Linux 命令(文件和目录管理 - mv)

简述 mv 命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中.如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖. 简述 命令介绍 命令选项 使用范例 命令介绍 命令名称 mv 命令全称 move 基本语法 mv [选项]- [-T] 源文件 目标文件 或:mv [选项]- 源文件- 目录 或:mv [选项]- -t 目录 源文件- 功能描述 将源文件重命名为目标文件,或将源文件移动至指定目录. 命令选项 选项 说明 --backup[=CONTROL] 为每