简体   繁体   中英

Shell cp: cannot stat no such file or directory

I was trying to use cp to copy files from one directory to another by globing

for files in index/*
do
  file=$(echo $files|cut -d'/' -f2)
  cp -r "$files" ".target/file"
done

However, cp will give this warning if the directory is empty. I tried 2>/dev/null to mute this message but it did not work. I wonder how I could fix it.

What about this: (not tested)

find /index -maxdepth 1 -type f -exec cp {} .target/ \;
  • -maxdepth 1 : only look in this directory
  • -type f : only take the files
  • -exec cp {} .target/ \; : execute a "file copy" action

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM