![用于在复制期间跳过文件的 Shell 键盘命令](https://linux22.com/image/1461444/%E7%94%A8%E4%BA%8E%E5%9C%A8%E5%A4%8D%E5%88%B6%E6%9C%9F%E9%97%B4%E8%B7%B3%E8%BF%87%E6%96%87%E4%BB%B6%E7%9A%84%20Shell%20%E9%94%AE%E7%9B%98%E5%91%BD%E4%BB%A4.png)
可能有点牵强,但是是否有一个键盘命令可以cp
被 shell(使用 bash/zsh)接受来跳过当前正在复制的文件,例如,如果我以递归方式复制一个小文件的文件夹结构,但忘记排除一个花费很长时间的大文件,而不是结束整个cp
执行,排除文件,然后重新开始复制-n
,我可以跳过该文件吗,因为没有更好的术语,“交互式”?
答案1
是的,您可以通过循环将所有内容传输到 shell 中:
for i in *; do
printf "echo 'Copying $i...'\nsleep 1\ncp '$i' 'dir/'\n\n" | zsh
done
这将产生以下输出(我创建了一个临时目录,其中包含名为1-10和一个目录目录:
Copying 1...
Copying 10...
^CCopying 2...
^CCopying 3...
^CCopying 4...
^CCopying 5...
^CCopying 6...
^CCopying 7...
^CCopying 8...
^CCopying 9...
在流式传输到之前zsh
,请确保命令执行了您想要的操作。