linux复制命令cp进度

不及物动词 其他 15

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux中,使用cp命令可以复制文件和目录。但是,默认情况下,cp命令是不会显示复制的进度的。不过,我们可以通过一些技巧来实现显示复制进度的效果。以下是几种实现方式:

    1. 使用rsync命令:rsync是一个功能强大的文件复制工具,不仅可以用于本地复制,还可以用于远程复制。它的一个特点就是可以显示复制进度。使用示例如下:
    “`bash
    rsync –progress source_file destination
    “`
    其中,source_file是要复制的文件的路径,destination是目标位置的路径。执行命令后,会显示复制的进度。

    2. 使用pv工具:pv是一个命令行工具,可以用于显示数据流的进度。通过管道将cp命令和pv命令结合起来,可以显示复制的进度。使用示例如下:
    “`bash
    cp source_file destination | pv -lep -s $(du -sb source_file | awk ‘{print $1}’)
    “`
    其中,source_file是要复制的文件的路径,destination是目标位置的路径。执行命令后,会显示复制的进度。

    3. 使用progress命令:progress是一个基于Bash脚本的文件复制进度显示工具。通过将cp命令嵌入到progress命令中,可以显示复制的进度。首先,需要安装progress工具,可以使用以下命令进行安装:
    “`bash
    sudo apt-get install progress
    “`
    安装完成后,使用如下命令显示复制进度:
    “`bash
    progress -w — cp source_file destination
    “`
    其中,source_file是要复制的文件的路径,destination是目标位置的路径。执行命令后,会显示复制的进度。

    以上是三种在Linux中显示复制进度的方法,可以根据自己的需求选择其中一种来使用。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux中,复制文件的命令是”cp”。当执行复制命令时,通常不会显示复制进度,但是有几种方法可以在复制过程中查看进度。下面是几种常用的方法:

    1. 使用rsync命令:rsync是一个强大的文件同步和复制工具,可以在复制文件时显示进度。只需在终端中输入以下命令:
    “`shell
    rsync -a –progress 源文件 目标文件
    “`
    这将复制源文件到目标文件夹,并显示复制进度。

    2. 使用pv命令:pv是一个用于监视数据流的工具,也可用于显示复制进度。首先,确保系统中已安装pv工具,然后执行以下命令:
    “`shell
    cp 源文件 目标文件 | pv -lep -s 文件大小 > 目标文件
    “`
    这将在复制过程中显示进度,并在完成后显示复制速度和总耗时。

    3. 使用progress命令:progress是一个基于命令行的工具,可以实时显示文件复制进度。使用以下命令可以安装progress工具:
    “`shell
    sudo apt-get install progress
    “`
    安装完成后,执行以下命令即可显示复制进度:
    “`shell
    cp 源文件 目标文件 | progress -m
    “`

    4. 使用watch命令结合du命令:watch命令可用于周期性刷新命令输出,而du命令可用于显示文件或目录的大小。结合使用这两个命令,可以实时查看复制进度。执行以下命令:
    “`shell
    watch -n 1 ‘du -sh 目标文件夹’
    “`
    这将每秒刷新一次目标文件夹的大小,从而显示复制进度。

    5. 使用dd命令:dd命令可用于复制文件和设备,并具有显示进度的选项。执行以下命令来复制文件并显示进度:
    “`shell
    dd if=源文件 of=目标文件 status=progress
    “`
    这将复制源文件到目标文件,并显示复制进度。

    使用上述方法之一,您可以在Linux中查看复制命令”cp”的进度,以确保复制过程顺利进行并了解剩余时间。请根据您的需求选择其中一种方法来显示复制进度。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux系统中,要查看cp命令的进度可以使用一个工具叫做”pv”,它是一个命令行工具,可以用来显示数据传输的实时进度。

    安装pv工具:
    在终端中执行以下命令来安装pv工具:
    “`
    sudo apt-get install pv
    “`

    使用pv查看cp命令的进度:
    在终端中使用cp命令复制文件时,通过管道将cp命令的输出传递给pv工具,就可以查看复制进度。

    例如,将一个文件夹”source”复制到”destination”:
    “`
    cp -r source destination | pv -lep -s $(du -sb source | awk ‘{print $1}’) >/dev/null
    “`

    解释一下上述命令的参数含义:
    – “-r”表示以递归的方式复制目录。
    – “-l”表示采用行协议,即从每一行的开始读取数据。
    – “-e”表示在复制结束后显示进度计数器。
    – “-p”表示显示进度百分比。
    – “-s”表示指定总的数据大小。
    – “$(du -sb source | awk ‘{print $1}’)”用来获取源文件夹的总大小。
    – “>/dev/null”表示将输出重定向到/dev/null,这样pv工具的输出将不会显示在终端上。

    通过上述命令,我们可以实时查看cp命令的进度百分比。另外,还可以在cp命令中添加其他参数,如”-v”来显示详细信息,或者指定复制速度等。

    希望以上内容对您有所帮助!

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部