TCL 常用命令:
1. 當前時間 [exec date +%m%d_%H%M] (實際是調用shell命令 date),比如在 icc 中保存cell 時可以用:save_mw_cel -as place_opt_[exec date +%m%d_%H%M]
2. 在 Makefile 中調用當前時間: `date +%Y%m%d` ,注意不是用方括號,而是 ` (鍵盤 ESC 下方的那個按鍵)
3. tcl 語法中的一個巨坑:在花括號內的所有特殊字符都將成為普通字符, 失去其特殊意義,比如置換符 $ ,在花括號中不再起到置換作用。
eg: get_flat_cells -filter { ref_name == $ref } ,這條命令中的變量 ref 不會被替換,所以無法抓取到任何cell,正確寫法應該是將花括號改成雙引號。
一個例外:在 if { } 這個條件花括號中的特殊字符可以正常解析,如 if { $val == true } { ... } 可以正常識別 $val 的值。而且 if { } 可以用小括號 :if ( ){ ... } 。
花括號與雙引號的區別:花括號中所有特殊字符都被當成普通字符;而雙引號中大部分特殊字符都被當做普通字符(只有三個特殊符號除外:換行符,變量置換符$,命令置換符 [ ] )
4. ICC中 filter 選項怎樣組合: 用小括號括起來,比如 get_shapes -filter “ ( layer_name == M2 || layer_name == M3 ) && shape_use == detail_route ”
Shell 常用命令:
1. 查看當前目錄下的文件及目錄大小: du -sh ./*
2. 在當前目錄及子目錄下搜索文件: find ./ -name "aa.txt"
find /home/user/ -name "*txt*" ( 注意雙引號)
3. linux 任務前台后台切換命令:
啟動任務時在后面加上符號 & ,表示在后台啟動該任務並運行,eg: bkend &
顯示后台所有任務:jobs , 加上 -l 則顯示任務詳細信息
將前台任務切換到后台運行: ctrl+z 暫停當前任務並切換到后台,注意這時候任務是暫停狀態,還需要用 bg %num(num是用jobs查詢到的任務號,不是PID)使其在后台運行起來
將后台任務切換到前台: fg %num
終止后台任務:kill %num,或者 kill PID
終止前台任務:ctrl+c
4. 壓縮和解壓:
.tar 文件:
壓縮: tar -cvf cc.tar aa bb 將文件 aa 和 bb 打包壓縮成 cc.tar ,其中選項 c 是 create, v 是 visible (打印壓縮過程), f 是 file (這個 f 參數是必須的)
解壓: tar -xvf cc.tar 將文件 cc.tar 解壓到當前目錄,其中選項 x 是 extract, v 是 visible,f 是 file (參數 f 是必須的)
.gz 文件:
壓縮: gzip aa.txt (注意壓縮后原文件會消失)
解壓: gzip -d aa.txt.gz (解壓后原來的壓縮文件也會消失)
5. 好用的grep:
grep aa file.rpt | grep -v bb : 抓取文件file.rpt 中包含aa 但是不包含bb 的行並打印出來,其中 “ | ” 為管道,表示將前面命令的輸出結果作為后面命令的輸入,選項 “ -v ” 表示反選
6. to be continue……
|-----------------------------------------|