扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1、创建文件夹
创新互联建站是一家专业提供江都企业网站建设,专注与网站制作、成都网站建设、H5页面制作、小程序制作等业务。10年已为江都众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。
mkdir -p 文件夹名
p 确保目录名称存在,不存在的就建一个。
2、创建文件
如:touch a.txt
拓展资料
Linux命令-创建文件
1、可以使用cat创建一个新的文件
命令:catfilename
使用cat创建文件时,以系统默认的文件属性作为新文件的属性,并接受键盘输入作为文件的内容。输入结束时按Ctrl+d退出并保存文件。
另外,使用cat filename命令可以查看文件内容。
cat file1 file2 file3 命令也可将多个文件合并到一个新的文件当中。首先创建一个newfile1并输入内容然后合并。
2、使用touch命令创建文件
首先,touch命令用的并不多,主要用于修改指定文件的访问和修改时间属性(Update the access and modification times of each FILE to the current time)。
当文件不存在时,则创建一个新的文件。touch只能创建空文件。
touch filename 以当前时间作为访问和修改时间属性值创建一个文件。
touche -r existfilename filename 根据existfilename的访问和修改时间属性确定filename的访问和修改时间属性。
可以看到newfile与tfile2的修改时间属性相同。
1 /dev/null 21
对于/dev/null设备一般不存在附加的说法,虽然这么写没错。一般写成:
1/dev/null 21
1/dev/null 含义是把标准输出重定向到/dev/null,其实就是屏蔽标准输出。
21 是把标准错误重定向到标准输出,也就是fprintf(stderr, "error msg");的信息会被打印到stdout上。
结合起来就是屏蔽所有输出信息。
至于为什么采用,以及这些符号,我也不清楚,前两者还算直观,这个我也是理解不能。
可以查看sh实现源码,通过代码了解这些符号的实现,希望注释中能有一些蛛丝马迹描述为什么采用这个符号。
[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]
大于。在linux中,-gt是大于的意思。-eq是等于的意思。-ne是不等于的意思。-ge是大于等于的意思。-lt是小于的意思。-le是小于等于的意思。脚本简单地说就是一条条的文字命令。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流