千家信息网

Linux中cp和mv搭配{,}在shell当中的用法

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章主要讲解了"Linux中cp和mv搭配{,}在shell当中的用法",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Linux中cp和mv搭配{,
千家信息网最后更新 2025年01月19日Linux中cp和mv搭配{,}在shell当中的用法

这篇文章主要讲解了"Linux中cp和mv搭配{,}在shell当中的用法",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Linux中cp和mv搭配{,}在shell当中的用法"吧!

经常会在博客或者论坛看到类似下面的命令 大括号扩展 Brace expansion { } shell 作用

  cp /etc/httpd/httpd.{,.bakup}

或者是

  mv resume{z,}.doc

那么,在uinx / linux shell命令中是什么意思?起什么作用呢?

{ } 并没有什么实际的含义,但是却可以作为Brace expansion(大括号扩展或叫做花括号扩展)而经常用于产生各种组个。以下是翻译自 GNU/BASH man page 的内容:

Brace expansion(大括号扩展或叫做花括号扩展) 是用来随机产生字符串组合的机制。这种机制类似于文件的扩展名,但是并不需要存在响应的文件。Brace expansion(大括号扩展或叫做花括号扩展)模式是一可选的preamble(前导字符),后面跟着一系列逗号分隔的字符串,包含在一对花括号中, 再后面是一个可选的postscript(打印编程语言)。preamble(前导字符)被添加到花括号中的每个字符串前面,postscript(打印编程语言)被附加到每个结果字符串之后, 从左到右进行扩展。 花括号扩展可以嵌套。扩展字符串的结果没有排序;而是保留了从左到右的顺序。

1.如,在终端中输入下面命令:

  echo foo{1,2,3}.txt

输出如下:

foo1.txt foo2.txt foo3.txt

2.也可以使用下面附加的实例,去在命令中"创建"一个参数,以节省输入的时间,提高工作效率:
echo file.txt{,.bak}

  echo file-{a..d}.txt  echo mkdir -p /apache-jail/{usr,bin,lib64,dev}  echo cp httpd.conf{,.backup}  echo mv delta.{txt,doc}

3.可以使用Brace expansion(大括号扩展或叫做花括号扩展)来复制,重命名文件,或者是备份文件,还可以是创建目录等。在下面这个习惯性使用的的例子中,将 file1.txt 备份为 file2.txt.bak ,输入:

cp  -v file1.txt file1.txt.bak

如果使用Brace expansion,节省时间,则输入:

cp  -v  file1.txt{,.bak}

输出如下:

file1.txt -> file1.txt.bak

更多大括号扩展实例如下:

4. 如果我们执行:

$ cp /etc/apt/sources.list     /etc/apt/sources.list.bak

这两个 /etc/apt/sources 部分相同,为了少输入两次/etc/apt/sources ,大括号扩展参数。还有平时重命名,备份文件,创建链接时候,都可以使用大括号扩展参数的方法提高效率。

大括号扩展,即大括号包围的,用逗号隔开的参数会扩展为独立的多个参数。

$ cp /etc/apt/sources.{list,list.bak}

Shell 在解释时会自动将后面的参数扩展成两个,就变成了和上面一样的完整命令。

当然,还可更简单,将 list 也考虑进去,在逗号前什么都不写,如下:

$ cp /etc/apt/sources.list{,.bak}

这样逗号前面没东西,那么参数就保持原来的不变,逗号后面的照样扩展。

感谢各位的阅读,以上就是"Linux中cp和mv搭配{,}在shell当中的用法"的内容了,经过本文的学习后,相信大家对Linux中cp和mv搭配{,}在shell当中的用法这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

括号 参数 字符 命令 字符串 文件 逗号 输入 内容 备份 学习 两个 作用 前导 实例 效率 时间 更多 机制 结果 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 端游方舟怎么加入模组服务器 在不重启服务器的情况下重载插件 资质网络安全创新服务 我的世界服务器java版本过低 实时数据库组成 求生之路服务器引擎错误 云南红河州网络安全专家课堂 创新网络技术推广品质保障 四川专业软件开发服务费 数据库中的视图会自动变化吗 广州云姿网络技术 符号拼图软件开发 数据库记录asp在线编辑 求生之路2RPG服务器QQ群 procast国标数据库 彭泽软件开发项目管理 凌科科技网络技术有限公司 导致数据库无法拼接的原因 重庆市网络安全教育平台作业 软件开发功能齐全 tc在数据库中存了什么信息 软件运行环境 软件开发环境 网络安全ctf是什么意思 剑侠世界服务器修改金币 云服务器上油管 求生之路2RPG服务器QQ群 华昌科技互联网金融技术 CRM系统搭建在服务器教程 bs软件开发和bs系统构架 卫生网络安全信息化领导小组
0