重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
":%s/\r/,/g" 是一个 Vim 的命令,表示将当前文件中的所有回车符("\r")替换为逗号(",")。
创新互联公司专注于衢州网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供衢州营销型网站建设,衢州网站制作、衢州网页设计、衢州网站官网定制、微信平台小程序开发服务,打造衢州网络公司原创品牌,更为您提供衢州网站排名全网营销落地服务。
具体来说,这个命令由三部分组成:
":":表示输入命令模式。
"%s":表示对当前文件中的所有行进行替换操作。
"/\r/,/g":表示将文件中的所有回车符替换为逗号。
执行这个命令后,Vim 会在当前文件中执行批量替换操作,将所有回车符替换为逗号。
注意:这个命令只适用于 Vim 编辑器,其他编辑器可能不支持。
[1] 每两行合并在一起
@dahuawk 'ORS=NR%2?" ":"\n"{print}'
[2] 每三行合并在一起
@dahuawk 'ORS=NR%3?" ":"\n"{print}'
[3] 每四行合并在一起
@dahuawk 'ORS=NR%4?" ":"\n"{print}'
[4] 统计std cell和sRam占的面积
@dahusummaryReport
[5] 找出drc的port相关的数量
@dahucat postroute_opt.drc | grep -B1 Type: | grep -v Type: | grep "\[" |-
[6] 获得选中的pin的名字
@innovusdbget selected.name
[7] 对一个文件,多目标删除
@dahused -i 's/MODE1\|MODE2\|MODE3\|MODE4\|MODE5//g'
[8] 获得不规则fplan的坐标组
@innovusdbget top.fplan.boxes
[9] 在某个目录下找到带某个字符的文件[区分大小写]
@dahufind -iname "*tcic*"
[10] 在某个目录下,遍历所有文件内容,得到含有某个字符/字符串的行
@dahugrep -r 'insertion delay' ./
[11] 查看当前的INNOVUS版本号
@dahuecho $INVS_VER
[12] 替换某个目录下所有文件内容
@dahused -i"s/查找的内容/替换后的内容/g"`grep -rl"查找的内容"./`
[13] 在gui界面下highlight某条path
@dahu ctd_trace -from * -to * -color *
[14] 引用${REV},为什么采用大括号{}
为了防止引用造成后面错乱。
如:/fs/omp_com_03/RELEASE/top2hlb/R1/HLB_DEF/${REV}/${top}.def.gz
[15] 解压命令
gzip -d FileName.gz
[16] 换某个cell的坐标 {AAA, BBB}
@innovus dbset [dbget top.inst.name XXXXXXXX].pt_x AAA
@innovus dbset [dbget top.inst.name XXXXXXXX].pt_y BBB
@innovus zoomSelected
[17] 设置某一个cell不用
@innovus set_dont_touch BUFF false
@innovus set_dont_touch BUFF true
[18] 找某个性质
@innovus dbSet [].?h
[19] 删去空白行
vim 中:g/^s*$/d
简单解释一下:
g :全区命令
/ :分隔符
^s*$ :匹配空行,其中^表示行首,s表示空字符,包括空格和制表符,*重复0到n个前面的字符,$表示行尾。连起来就是匹配只有空字符的行,也就是空行。
/d :删除该行
[20] echo 写入带有双引号""的内容。
echo ‘ “AAAbbb” ’ 1.tcl
[21] echo 写入带有单引号‘’的内容。
echo “ ‘AAAbbb' ” 1.tcl
[22] keep CPU 数目
@innovussetMultiCpuUsage -localCpu 16
@innovushistory keep 999999
[23] 打开xlsm文件
openoffice.org 文件
[24] 显示clock path路径
@innovus report_timing -to XXX -path_type full_clock
[25]报出没有被约束到的path
@innovus report_timing -to XXX -uncounstrained
[26]报出穿过path中的某一点
@innovus report_timing -to XXX -view
view = MODE + corner
[27] vim 全选(高亮显示 ):按esc后,然后ggvG或者ggVG
[28]
1.把文本第1行读入到内存 模式空间(pattern space),相当于放到流程水线上处理吧
2.把处理好的结果存放到另一个内存空间(hold space)相当于临时的仓库吧
3.输出处理结果,循环处理第2行,覆盖清空(pattern space)、(hold space)至最后一行
由于各种各样的原因,比如用户希望在某个条件下脚本中的某个命令被执行,或者希望模式空间得到保留以便下一次的处理,都有可能使得sed在处理文件的时候不按照正常的流程来进行。这个时候,sed设置了一些高级命令来满足用户的要求。
sed命令:
不管是大写还是小写g、h都是在pattern space、hold space相互拷贝
区别是 小写代表清空原来数据,大写是保留原来数据在后面追加新数据
案例
图解分析过程
P:Pattern Space
H:Hold Space
蓝色:Hold Space中的数据
绿色:Pattern Space中的数据
案例
参考链接: