bash - 有没有办法阻止 cp 覆盖两个全局文件中的第二个
问题描述
意图:
cp /path/to/code.{c,h} .
简洁版:
cp /path/to/code.* .
再次出现错字:
cp /path/to/code.*
在拼写错误的情况下,第二个文件被第一个文件覆盖。这一直困扰着我,我并不乐观,除了重写我的神经回路之外还有其他解决方案,但人们可以做梦。
每次都要求确认或一些危险的视觉指示都是解决方案。
默认为 --no-clobber 或类似的不是一个解决方案,因为我通常会在预期的目的地破坏某些东西。
解决方案
按照建议,您可以创建一个别名
alias cp='cp -i'
这样您在从命令行调用 cp 时总是会收到提示。请注意,这不会影响脚本。
cp 的手册页有这样的说法:
-i, --interactive
prompt before overwrite (overrides a previous -n option)
推荐阅读
- intellij-idea - 新手无法在 IntelliJ 中使用带有 FXML 的 Gluon 多视图正确运行或调试新项目
- ruby-on-rails - 如何在 ruby-on-rails 中测试破坏失败
- html - CSS 不适用于 HTML
- c - ELF文件的CRC32?任意长度?
- postgresql - 查询 PostgreSQL 的日志目录/文件名
- macros - bind_quoted 不会在 def 内创建绑定
- javascript - 为什么ajax请求不发送?
- sql - 从此表中的多个列中选择一次不同的值,保留原始顺序?
- python - 如何在heroku中使用django上传Selenium python,我收到h12错误
- git - 如何从 Github 中提取不包含框架文件的 Laravel 项目?