精华内容
下载资源
问答
  • ubuntu复制多个文件
    千次阅读
    2021-01-12 00:40:36

    该命令的功能是将给出的文件或目录拷贝到另一文件或目录中。

    语法: cp [选项] 源文件或目录 目标文件或目录

    说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。

    该命令的各选项含义如下:

    - a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。

    - d 拷贝时保留链接。

    - f 删除已经存在的目标文件而不提示。

    - i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。

    - p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。

    - r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。

    - l 不作拷贝,只是链接文件。

    需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名已存在,用cp命令拷贝文件后,这个文件就会被新源文件覆盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。

    例如:将/home/wally/test中 test.c 的文件复制到/local/arm 中,命令为:

    cd /wally/test

    ls

    sudo cp -i test.c /local/arm

    更多相关内容
  • 只需从命令行一次复制多个文件有几种方法可以实现这个,我见过的最容易的是cp /home/usr/dir/{file1,file2,file3,file4} /home/usr/destination/语法使用cp命令,后跟所需文件所在目录的路径,所有要复制的文件都用...

    只需从命令行一次复制多个文件

    有几种方法可以实现这个,我见过的最容易的是cp /home/usr/dir/{file1,file2,file3,file4} /home/usr/destination/

    语法使用cp命令,后跟所需文件所在目录的路径,所有要复制的文件都用方括号括起来并用逗号分隔。

    或者,如果所有文件都有相同的前缀,但结尾不同,则可以执行以下操作:cp /home/usr/dir/file{1..4} ./

    将复制file,file,file3和file4的位置。

    使用python处理重复项import os,sys,shutil

    ### copies a list of files from source. handles duplicates.

    def rename(file_name, dst, num=1):

    #splits file name to add number distinction

    (file_prefix, exstension) = os.path.splitext(file_name)

    renamed ="%s(%d)%s" % (file_prefix,num,exstension)

    #checks if renamed file exists. Renames file if it does exist.

    if os.path.exists(dst + renamed):

    return rename(file_name, dst, num + 1)

    else:

    return renamed

    def copy_files(src,dst,file_list):

    for files in file_list:

    src_file_path = src + files

    dst_file_path = dst + files

    if os.path.exists(dst_file_path):

    new_file_name = rename(files, dst)

    dst_file_path = dst + new_file_name

    print"Copying:" + dst_file_path

    try:

    shutil.copyfile(src_file_path,dst_file_path)

    except IOError:

    print src_file_path +" does not exist"

    raw_input("Please, press enter to continue.")

    def read_file(file_name):

    f = open(file_name)

    #reads each line of file (f), strips out extra whitespace and

    #returns list with each line of the file being an element of the list

    content = [x.strip() for x in f.readlines()]

    f.close()

    return content

    src = sys.argv[1]

    dst = sys.argv[2]

    file_with_list = sys.argv[3]

    copy_files(src,dst,read_file(file_with_list))

    展开全文
  • 通过脚本在ubuntu下将多个文件夹下的文件递归复制到对应的目标路径中。

    德胜才,谓之君子;才胜德,谓之小人。—— 《资治通鉴•唐纪》

    一.前因 — 减少重复工作

    之前在ubuntu部署开发软件的运行环境时,需要将不同的文件夹下的内容复制粘贴到新机的特定位置,为了解决需要反复手动放置文件导致浪费时间的问题,研究了一下如何用脚本完成工作;下面先简单介绍一下脚本功能。

    二.结果 — 不再苦恼ubuntu多文件夹多路径复制

    使用以下提供的脚本可以将需要复制的文件夹及其子项进行递归复制,即将源文件夹中所有内容完全复制到目标文件夹中,如果是多个源文件路径复制到多个目标路径则需要自己配置多段同样的程序或者将程序略作修改(方法会在后面提及)。

    三.经历 — 以一个文件夹(含子项)复制到目标路径举例

    #!/bin/bash
    #cd /
    #源文件夹路径
    home_doc_path="/home/exe"
    #目标文件夹路径
    goal_doc_path="/opt/exe"
    
    function ergodic_file()
    {
    #判断目标文件夹是否存在,不存在则创建
       if [ ! -d ${goal_doc_path} ]; then
          mkdir -p ${goal_doc_path}
          #打印创建文件夹信息
          echo "make new: ${goal_doc_path}"
       fi
    
    #复制主流程
       #判断源路径文件是否存在
       if [ -d ${home_doc_path} ]; then
          #遍历提取文件夹下的子文件/子文件夹并赋值给 file_exe
          for file_exe in `ls ${home_doc_path}`; do
             #打印子文件/子文件夹名字及完整路径,已屏蔽
             #echo "edc1: ${file_exe}"
             #echo "edc2: ${home_doc_path}"/"${file_exe}"
             #将源文件的完整路径名赋值给 total_file
             total_file=${home_doc_path}"/"${file_exe}
             #如果刚才遍历的源文件为文件夹则执行then后程序,反之执行else程序
             if [ -d ${total_file} ]; then
                #在目标路径创建源文件含有的文件夹
                mkdir -p ${goal_doc_path}"/"${file_exe}
                #打印目标文件夹路径信息
                #echo "edc3: ${goal_doc_path}"/"${file_exe}"
                #递归复制文件夹;$后的第一个为cp_doc_file的第一个参数$1,第二个为参数$2
                cp_doc_file ${total_file} ${file_exe}
             else
                #直接复制相应文件
                cp ${home_doc_path}"/"${file_exe} ${goal_doc_path}
                #打印复制的文件路径
                #echo "edc4: ${home_doc_path}"/"${file_exe}"
             fi 
          done
       else
          echo "home_exe_path do not have"
       fi
    
    #config 库文件
    sudo ldconfig
    sudo ldconfig
    }
    
    function cp_doc_file()
    {
       #打印参数一、参数二
       #echo "cef1: $1"
       #echo "cef2: $2"
       #将参数1文件夹下内容赋值给 file
       for file in `ls $1`; do
           #打印路径信息
           #echo "cef3: $1"/"${file}"
           #将需要复制的文件或文件夹的完整路径赋值给 total_file
           total_file=$1"/"${file}
           #判断源文件夹是否丢失文件
           if [ -d ${total_file} ]; then
              #在目标文件夹下创建不存在的文件夹
              mkdir -p ${goal_doc_path}"/"${2}"/"${file}
              #打印文件夹路径信息
              #echo "cef4: ${goal_doc_path}"/"${2}"/"${file}"
              #递归复制
              cp_doc_file ${total_file} $2"/"${file}
           else
              #将文件内容直接复制
              cp ${total_file} ${goal_doc_path}"/"${2}
              #打印复制到目标路径文件的路径信息
              #echo "cef5: ${total_file}"
           fi
       done 
    }
    #脚本调用运行函数
    ergodic_file
    
    

    四.使用注意及扩展

    1. 使用时可根据需要将打印信息的语句解除屏蔽或进行屏蔽。
    2. 可将以上脚本程序直接复制到“.txt”文件中,然后将文件更改后缀为“.sh”。
    3. 运行脚本前需要使用"chmod +x 文件名"将脚本设置为可运行文件。
    4. 如果复制的目标路径需要高级权限,可以使用"sudo ./文件名"来运行,如果不需要则可以直接使用"./文件名"来运行。
    5. 需要进行多个源路径文件复制到多个目标路径时除了前述提到的方法还可以将"ergodic_file"函数略作修改,使其含有两个输入变量(一个是源文件夹路径,一个是目标文件夹路径),然后多次调用带参函数ergodic_file即可。

    欢迎在评论区评论或私信交流。

    展开全文
  • 您是否可以在Linux或Unix方法中获取...与cp和一起使用xargs要将文件复制到Linux / Ubuntu中的多个目录,请在命令中使用以下命令–$echodir1dir2dir3|xargs-n1cpfile1在上面的命令中,我们将file1复制到dir1,dir2和...

    您是否可以在Linux或Unix方法中获取一个文件并将其复制到一大堆替代目录中?然后,本文适合您将文件复制到Linux / Ubuntu中的多个目录。

    与cp和一起使用xargs

    要将文件复制到Linux / Ubuntu中的多个目录,请在命令中使用以下命令–$ echo dir1 dir2 dir3 | xargs -n 1 cp file1

    在上面的命令中,我们将file1复制到dir1,dir2和dir3目录中。上面命令的示例示例如下所示-$ echo Music Videos Desktop | xargs -n 1 cp httpstat.py

    在以上命令中,我们将httpstat.py文件复制到“音乐”,“视频”和“桌面”目录。要验证上述命令,请使用以下命令–$ cd Music

    ~/Music$ ls

    样本输出应如下所示–httpstat.py

    另一个验证上述命令的示例如下所示–$ cd Desktop

    ~/Desktop$ ls

    样本输出应如下所示–httpstat.py

    与cp和一起使用find

    要将文件复制到Linux / Ubuntu中的多个目录,请在命令中使用以下命令–find dir1 dir2 dir3 -type d -exec cp file1 {} \;

    上面的命令查找dir1,dir2和dir3目录并将file1复制到这些目录。示例示例如下所示–$ find Music Desktop -type d -exec cp httpstat.py {} \;

    在上面的命令中,我们将httpstat.py文件复制到Music和Desktop目录。要验证上述命令,请使用以下命令–$ cd Desktop

    ~/Desktop$ ls

    样本输出应如下所示–httpstat.py

    另一个验证上述命令的示例如下所示–$ cd Music

    ~/Music$ ls

    样本输出应如下所示–httpstat.py在以上文章中,我们了解到–如何在Linux中将文件复制到多个目录。在我们的下一篇文章中,我们将提出更多基于Linux的技巧。继续阅读!

    展开全文
  • ubuntu复制文件

    千次阅读 2017-08-20 01:34:15
    ubuntu复制文件 1.在服务器上的文件复制: cp 源文件 目的文件 cp 源文件 目的文件夹 2.从一台服务器上拷贝到另一台服务器 scp username@ip:directory 本台服务器的路径 3.从硬盘拷贝文件到服务器...
  • 移动or复制文件(夹) - ubuntu操作命令
  • 我们常常会把Ubuntu等Linux系统安装在VMware虚拟机中,当我们想把自己配置好的Ubuntu系统转移另一台机器或者复制给别人时我们可能会发现,我在尝试迁移的时候,我的.vmdx文件不止一,大部分人都说,一般情况下,...
  • 同一台Ubuntu 启动多个mysql

    千次阅读 2017-03-21 17:52:07
    ubuntu 安装mysql 启动多个端口mysql服务
  • ubuntu nginx 安装多个php版本

    千次阅读 2021-12-19 03:43:47
    安装多个php版本,同时也要安装php7.4-fpm 或php7.0-fpm,安装完成后,找到每个php版本的php7.4-fpm.sock文件位置,修改nginx每个网站配制文件,每个站点项目nginx配制文件配制使用php对应的fpm,重启nginx就生效了。...
  • 这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一适合你的列表创建一表格设定内容居中、居左、...
  • -d :若来源档为连结档的属性(link file),则复制连结档属性而非档案自己;-f :为强制 (force) 的意思,如有重复或其余疑问时,不会询问使用者,而强制复制;-i :若目的档(destination)已经存在时...
  • 1.在一包含多种类型文件的文件夹中,将jpg文件移动到另一文件夹 mv `ls -l | grep .jpg$ | awk '{print $9}'` 目标文件夹路径
  • cp -r 待备份目录 目的地址 ...但是需要说明的一点:此命令是将前者的lib文件夹复制到了后者的lib文件夹中,即产生了4.13/python-many-process/venv/lib/lib的目录,如果想让前者的文件夹中例如4.13/venv/lib/pyt.
  • ubuntu 复制命令

    万次阅读 2017-05-04 09:44:30
    说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。 该命令的各选项含义如下: - a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。 -...
  • 从主机复制文件到虚拟机方法很,以下介绍使用过的三种方法 1、虚拟机自带的工具:VMware Tools 在初次安装好虚拟机后,创建ubuntu虚拟机,打开之前查看下磁盘是否为“自动检测” 打开虚拟机后,第一张图安装VMware...
  • ubuntu文件复制

    千次阅读 2018-04-02 12:07:07
    总结小记 在ubuntu下,文件复制一般有两种...采用第一种方法,复制到时开始复制速率达到4点几兆美妙,后面一直变慢,到800kb/s时,显示需要2个多小时。 采用命令行 sudo cp /media/victorleelk/F4412C65CD64DDB4/...
  • ubuntu和windows复制粘贴

    千次阅读 2021-08-04 11:36:15
    在安装完毕ubuntu后无法复制粘贴,找了很这个有用 1.点这个位置的安装VMware Tools ...如果这个位置是灰色的,你需要在编辑虚拟机设置....gz的压缩文件包,我们要给他复制到tmp文件里(这个文件在computer里...
  • 1.有使用sudo复制的话的话就切换root用户,删除位于.ssh/known_hosts文件就可以解决这bug: $ su - cd .ssh ls rm known_hosts 2.不是使用sudo复制的话,删除位于.ssh/known_hosts文件就...
  • 网上搜索的方法很多,代码过关的在终端可以解决,不过都是很麻烦,尤其是要复制DSDT文件夹下多个文件。 1、ctrl+alt+t 打开终端。 2、 输入sudo nautilus。 3、进行复制等操作。 ...
  • Ubuntu20 安装多个版本Python

    千次阅读 2020-06-30 18:29:50
    Ubuntu安装多个版本Python 下载 GitHub 下载 git clone https://github.com/pyenv/pyenv.git ~/.pyenv 码云下载加速 git clone https://github.com/aifenxiang/pyenv.git ~/.pyenv 配置 bash 配置 echo 'export ...
  • Ubuntu:批量拷贝文件

    千次阅读 2018-03-13 12:41:13
    cp ./*.manyfiles ./need_to_put_file
  • 我的虚拟机装的是ubuntu18.04,想实现主机与虚拟机的复制粘贴,要安装vmware tools,根据网上的教程装了很次,还是没能成功。 重启的时候还是提示没有安装,如果你想知道有没有安装。 右键查看,如果显示是“重新...
  • VMware是安装在ubuntu中的,Windows10是虚拟机,一右键复制Windows中的文件,VMware就闪退。 解决 命令行执行 sudo vmware 如果需要两系统间复制粘贴文件,需要执行sudo nautilus来打开一带有root权限的...
  • ubuntu中建立、复制、移动、删除文件的命令 (2010-10-27 10:22:04)转载▼ var tag=′ubuntu,复制,移动,删除,it
  • 拷贝文件到另一个目录,需要一点点基础的人才能看懂。适合多级文件夹,也可以根据需要,自己修改代码。代码很容易看懂。可以修改成拷贝文件多个不同的目录。很实用
  • 我电脑是当年新出的游戏本,在虚拟机里安装Ubuntu16后鼠标有很明显的延时卡顿,我同学的反而没有),于是我选择了在windows10的基础上安装双系统,因此电脑里到现在一直都是双系统,移掉一都感觉不舒服。...
  • 在配置caffe和tensflow 时,往往需要的CUDA版本不一样,这就需要多个版本的CUDA共存,并且能够随意切换,免去了每次重新安装配置cuda的过程。 cuda_8.0.61_375.26_linux.run 文件名说明: 前面的cuda_8.0.61代表c....
  • 问题主要是由于Ubuntu系统中Kernel写入缓存太大,以至于从高速存储写往低速设备时出现拥塞瓶颈,从而出现卡死的情况。 解决方法是避免使用文件管理器及scp的方法,在拷贝大文件时可以采用如下指令: ...
  • windows主机和ubuntu互传文件的4种方法

    万次阅读 多人点赞 2022-04-06 23:43:53
    我的ubuntu系统是安装在 VMware 虚拟机中的,两者之间经常要互传文件,下面介绍几种常用的互传文件方法。 1. 共享文件夹方式互传 在虚拟机中需要开启共享文件夹的功能。首先虚拟机中的ubuntu要求是已经开机了的状态...
  • 1.经历了虚拟机黑屏、无法复制粘贴等奇葩事件 2.之前的虚拟机没有问题所以对比以下两者的文件 查过一些网上的资料需要运行VMware-user但是新安装的虚拟机里没有.. 3.先把原来的删除掉 重新安装试试 出现...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 95,433
精华内容 38,173
关键字:

ubuntu复制多个文件