BASH copy all files except one

后端 未结 8 574
逝去的感伤
逝去的感伤 2020-11-30 19:13

I would like to copy all files out of a dir except for one named Default.png. It seems that there are a number of ways to do this. What seems the most effective to you?

8条回答
  •  独厮守ぢ
    2020-11-30 19:42

    Simple, if src/ only contains files:

    find src/ ! -name Default.png -exec cp -t dest/ {} +
    

    If src/ has sub-directories, this omits them, but does copy files inside of them:

    find src/ -type f ! -name Default.png -exec cp -t dest/ {} +
    

    If src/ has sub-directories, this does not recurse into them:

    find src/ -type f -maxdepth 1 ! -name Default.png -exec cp -t dest/ {} +
    

提交回复
热议问题