不知道你的打開(kāi)是什么意思,Linux下可以查看文件的命令有很多,比如cat,more,less,head,vim等等.用vim查看文件后,退出可以按下Esc,輸入:q!
創(chuàng)新互聯(lián)是一家專業(yè)提供鄂托克前企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、H5網(wǎng)站設(shè)計(jì)、小程序制作等業(yè)務(wù)。10年已為鄂托克前眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。
是不保存,保存的話是wq。有時(shí)候不知道怎么退出正在執(zhí)行的命令可以試試ctrl+c,想回到Linux命令行可以試試ctrl+d.
一般情況下可以使用cp命令來(lái)對(duì)文件夾進(jìn)行復(fù)制
cp的參數(shù)中有個(gè)-r和-R可以遞歸地將文件夾內(nèi)部所有的文件復(fù)制到另一個(gè)文件夾內(nèi)
使用方法
cp -r 要復(fù)制的文件夾 復(fù)制到哪個(gè)文件夾
如果只復(fù)制該文件夾內(nèi)所有的文件而不復(fù)制該文件夾內(nèi)內(nèi)的文件夾的話
則可以寫(xiě)一個(gè)腳本或者程序來(lái)完成
一個(gè)簡(jiǎn)的shell腳本如下
#!/bin/bash?
function?copy()
{
cd?"$1"
for?i?in?`ls?-a`
do
if?[?"$i"?==?"."?]?||?[?"$i"?==?".."?]
then
continue
fi
if?[?-d?"$i"?]
then
copy?"$i"?"$2"
else
cp?"$i"?"$2"
fi
done
cd?..
}
copy?"$1"?"$2"
exit?0
第二個(gè)參數(shù)使用絕對(duì)路徑
Linux shell常用命令匯總
對(duì)于經(jīng)常使用linux系統(tǒng)的博主來(lái)說(shuō),基本常用的shell命令是少不了的,下面為大家總結(jié)了Linux shell的常用命令,希望對(duì)大家有所幫助!
1.檢查遠(yuǎn)程端口是否對(duì)bash開(kāi)放:
echo /dev/tcp/8.8.8.8/53 echo "open"
2.讓進(jìn)程轉(zhuǎn)入后臺(tái):
Ctrl + z
3、將進(jìn)程轉(zhuǎn)到前臺(tái):
fg
4.產(chǎn)生隨機(jī)的十六進(jìn)制數(shù),其中n是字符數(shù):
openssl rand -hex n
5.在當(dāng)前shell里執(zhí)行一個(gè)文件里的命令:
source /home/user/file.name
6.截取前5個(gè)字符:
${variable:0:5}
7.SSH debug 模式:
ssh -vvv user@ip_address
8.SSH with pem key:
ssh user@ip_address -i key.pem
9.用wget抓取完整的網(wǎng)站目錄結(jié)構(gòu),存放到本地目錄中:
wget -r --no-parent --reject "index.html*" -P /home/user/dirs
10.一次創(chuàng)建多個(gè)目錄:
mkdir -p /home/user/{test,test1,test2}
11.列出包括子進(jìn)程的進(jìn)程樹(shù):
ps axwef
12.創(chuàng)建 war 文件:
jar -cvf name.war file
13.測(cè)試硬盤(pán)寫(xiě)入速度:
dd if=/dev/zero of=/tmp/output.img bs=8k count=256k; rm -rf /tmp/output.img
14.測(cè)試硬盤(pán)讀取速度:
hdparm -Tt /dev/sda
15.獲取文本的md5 hash:
echo -n "text" | md5sum
16.檢查xml格式:
xmllint --noout file.xml
17.將tar.gz提取到新目錄里:
tar zxvf package.tar.gz -C new_dir
18.使用curl獲取HTTP頭信息:
curl -I
19.修改文件或目錄的時(shí)間戳(YYMMDDhhmm):
touch -t 0712250000 file
20.用wget命令執(zhí)行ftp下載:
wget -m
21.生成隨機(jī)密碼(例子里是16個(gè)字符長(zhǎng)):
LANG=c /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16};echo;
22.快速備份一個(gè)文件:
cp some_file_name{,.bkp}
23.訪問(wèn)Windows共享目錄:
smbclient -U "DOMAIN\user" //dc.domain.com/share/test/dir
24.執(zhí)行歷史記錄里的命令(這里是第100行):
!100
25.解壓:
unzip package_name.zip -d dir_name
26.輸入多行文字(CTRL + d 退出):
cat test.txt
27.創(chuàng)建空文件或清空一個(gè)現(xiàn)有文件:
\ test.txt
28.與Ubuntu NTP server同步時(shí)間:
ntpdate ntp.ubuntu.com
29.用netstat顯示所有tcp4監(jiān)聽(tīng)端口:
netstat -lnt4 | awk '{print $4}' | cut -f2 -d: | grep -o '[0-9]*'
30.qcow2鏡像文件轉(zhuǎn)換:
qemu-img convert -f qcow2 -O raw precise-server-cloudimg-amd64-disk1.img \precise-server-cloudimg-amd64-disk1.raw
31.重復(fù)運(yùn)行文件,顯示其輸出(缺省是2秒一次):
watch ps -ef
32.所有用戶列表:
getent passwd
33.Mount root in read/write mode:
mount -o remount,rw /
34.掛載一個(gè)目錄(這是不能使用鏈接的情況):
mount --bind /source /destination
35.動(dòng)態(tài)更新DNS server:
nsupdate eof p="" /eof
update add $HOST 86400 A $IP
send
EOF
36.遞歸grep所有目錄:
grep -r "some_text" /path/to/dir
37.列出前10個(gè)最大的文件:
lsof / | awk '{ if($7 1048576) print $7/1048576 "MB "$9 }' | sort -n -u | tail
39.打開(kāi)Vim并跳到文件末:
vim + some_file_name
40.Git 克隆指定分支(master):
git clone git@github.com:name/app.git -b master
41.Git 切換到其它分支(develop):
git checkout develop
42.Git 刪除分支(myfeature):
git branch -d myfeature
43.Git 刪除遠(yuǎn)程分支
git push origin :branchName
44.Git 將新分支推送到遠(yuǎn)程服務(wù)器:
git push -u origin mynewfeature
45.打印歷史記錄中最后一次cat命令:
!cat:p
46.運(yùn)行歷史記錄里最后一次cat命令:
!cat
47.找出/home/user下所有空子目錄:
echo /dev/tcp/8.8.8.8/53 echo "open"
1.檢查遠(yuǎn)程端口是否對(duì)bash開(kāi)放:
find /home/user -maxdepth 1 -type d -empty
48.獲取test.txt文件中第50-60行內(nèi)容:
test.txt sed -n '50,60p'
49.運(yùn)行最后一個(gè)命令(如果最后一個(gè)命令是mkdir /root/test, 下面將會(huì)運(yùn)行: sudo mkdir /root/test):
sudo !!
50.創(chuàng)建臨時(shí)RAM文件系統(tǒng) – ramdisk (先創(chuàng)建/tmpram目錄):
mount -t tmpfs tmpfs /tmpram -o size=512m
51.Grep whole words:
grep -w "name" test.txt
52.在需要提升權(quán)限的.情況下往一個(gè)文件里追加文本:
echo "some text" | sudo tee -a /path/file
53.列出所有kill signal參數(shù):
kill -l
54.在bash歷史記錄里禁止記錄最后一次會(huì)話:
kill -9 $$
55.掃描網(wǎng)絡(luò)尋找開(kāi)放的端口:
nmap -p 8081 172.20.0.0/16
56.設(shè)置git email:
git config --global user.email "me@example.com"
57.To sync with master if you have unpublished commits:
git pull --rebase origin master
58.將所有文件名中含有”txt”的文件移入/home/user目錄:
find -iname "*txt*" -exec mv -v {} /home/user \;
59.將文件按行并列顯示:
paste test.txt test1.txt
60.shell里的進(jìn)度條:
pv data.log
61.使用netcat將數(shù)據(jù)發(fā)送到Graphite server:
echo "hosts.sampleHost 10 `date +%s`" | nc 192.168.200.2 3000
62.將tabs轉(zhuǎn)換成空格:
expand test.txt test1.txt
63.Skip bash history:
space cmd
64.去之前的工作目錄:
cd -
65.拆分大體積的tar.gz文件(每個(gè)100MB),然后合并回去:
split –b 100m /path/to/large/archive /path/to/output/files
cat files* archive
66.使用curl獲取HTTP status code:
curl -sL -w "%{http_code}\\n" -o /dev/null
67.設(shè)置root密碼,強(qiáng)化MySQL安全安裝:
/usr/bin/mysql_secure_installation
68.當(dāng)Ctrl + c不好使時(shí):
Ctrl + \
69.獲取文件owner:
stat -c %U file.txt
70.block設(shè)備列表:
lsblk -f
71.找出文件名結(jié)尾有空格的文件:
find . -type f -exec egrep -l " +$" {} \;
72.找出文件名有tab縮進(jìn)符的文件
find . -type f -exec egrep -l $'\t' {} \;
73.用”=”打印出橫線:全選復(fù)制放進(jìn)筆記
printf '%100s\n' | tr ' ' = ;
目錄方法1:Windows系統(tǒng)的計(jì)算機(jī)1、使用鍵盤(pán)快捷鍵。2、使用“全選”按鈕。3、使用鍵盤(pán)快捷鍵。4、使用編輯菜單。方法2:Mac OS X系統(tǒng)的計(jì)算機(jī)1、使用鍵盤(pán)快捷鍵。2、使用編輯菜單。3、使用鍵盤(pán)快捷鍵。4、使用編輯菜單。方法3:移動(dòng)設(shè)備1、長(zhǎng)按你想要選擇的文本。2、長(zhǎng)按你想要選擇的文本??焖龠x中工作區(qū)域中的所有內(nèi)容是一項(xiàng)基本的電腦技能。通過(guò)全選,你可以一次性選擇一個(gè)目錄下的所有文件、文檔中的所有文本或者程序中的所有對(duì)象。牢記并掌握這一技能可以大幅提高你的工作效率。閱讀本文,了解如何使用“全選”。
方法1:Windows系統(tǒng)的計(jì)算機(jī)
1、使用鍵盤(pán)快捷鍵。同時(shí)按下Ctrl+A按鍵來(lái)選中當(dāng)前路徑中的所有對(duì)象(文件和文件夾)。如果在電腦桌面上按下組合鍵,這會(huì)選中桌面上的所有圖標(biāo)。這個(gè)鍵盤(pán)快捷鍵也適用于大多數(shù)Linux系統(tǒng)。
2、使用“全選”按鈕。在Windows 8系統(tǒng)中,點(diǎn)擊資源管理器主頁(yè)選項(xiàng)卡中的“全選”按鈕,來(lái)選中當(dāng)前路徑中的所有對(duì)象。如果你使用的資源管理器中有編輯菜單,你可以從編輯菜單中找到“全選”按鈕。
Word和其它程序
1、使用鍵盤(pán)快捷鍵。同時(shí)按下Ctrl+A按鍵來(lái)選中文檔中的文本和其他對(duì)象。任何格式上的改動(dòng)都會(huì)應(yīng)用到選中的所有文本中。當(dāng)你使用全選命令時(shí),不會(huì)選中標(biāo)題和腳注。
事實(shí)上,只要程序中的對(duì)象是可被選中的,那么都可以使用鍵盤(pán)快捷鍵來(lái)進(jìn)行全選。
2、使用編輯菜單。在舊版本的Word程序中,點(diǎn)擊編輯按鈕,然后點(diǎn)擊“全選”。在新版Word程序中,找到“開(kāi)始”選項(xiàng)卡中的編輯部分,點(diǎn)擊選擇按鈕,然后點(diǎn)擊“全選”。
方法2:Mac OS X系統(tǒng)的計(jì)算機(jī)
1、使用鍵盤(pán)快捷鍵。同時(shí)按下Cmd+A按鍵來(lái)選中當(dāng)前路徑中的所有對(duì)象(文件和文件夾)。如果在電腦桌面上按下組合鍵,這會(huì)選中桌面上的所有圖標(biāo)。
2、使用編輯菜單。當(dāng)Finder程序位于當(dāng)前窗口時(shí),如果你想要選中其中所有的對(duì)象,可以點(diǎn)擊屏幕頂部的編輯菜單。點(diǎn)擊“全選”來(lái)選中當(dāng)前路徑中的所有對(duì)象。
Word和其它程序
1、使用鍵盤(pán)快捷鍵。同時(shí)按下Cmd+A按鍵來(lái)選中文檔中的文本和其他對(duì)象。任何格式上的改動(dòng)都會(huì)應(yīng)用到選中的所有文本中。當(dāng)你使用全選命令時(shí),不會(huì)選中標(biāo)題和腳注。
事實(shí)上,只要程序中的對(duì)象是可被選中的,那么都可以使用鍵盤(pán)快捷鍵來(lái)進(jìn)行全選。
2、使用編輯菜單。如果你不想用鍵盤(pán)快捷鍵,可以進(jìn)入編輯菜單,選擇其中的“全選”按鈕。點(diǎn)擊屏幕頂部的編輯菜單,然后點(diǎn)擊“全選”來(lái)選中當(dāng)前路徑中的所有對(duì)象。
方法3:移動(dòng)設(shè)備
1、長(zhǎng)按你想要選擇的文本。接著會(huì)出現(xiàn)一個(gè)菜單。不同的應(yīng)用程序可能會(huì)出現(xiàn)不同的菜單。但是大多數(shù)情況下,安卓設(shè)備的屏幕上方會(huì)出現(xiàn)一個(gè)標(biāo)準(zhǔn)的文本選擇欄。輕觸“全選”按鈕。 它的圖標(biāo)看上去是四個(gè)小方形排列成一個(gè)被虛線包繞的大方形。
其它程序可能有不同的操作方式。例如,在谷歌云端硬盤(pán)中,當(dāng)你長(zhǎng)按文本后,“全選”按鈕會(huì)出現(xiàn)在光標(biāo)的右側(cè)。
這個(gè)方法不適用于全選應(yīng)用程序的圖標(biāo)。
iPhone、iPad設(shè)備
1、長(zhǎng)按你想要選擇的文本。接著會(huì)在你手指按壓的位置附近出現(xiàn)一個(gè)菜單。輕觸“全選”來(lái)選中全部的文本。這個(gè)方法不適用于全選應(yīng)用程序的圖標(biāo)。
一些常用快捷鍵
CtrlAltF1切換到第一個(gè)文本終端。在Linux 下你可以有多達(dá)六個(gè)不同的終端。這個(gè)命令的意思是:“同時(shí)按住Ctrl鍵和Alt鍵,然后按F1鍵,再釋放所有的鍵”。
CtrlAltFn (n=1..6):切換到第n個(gè)文本終端。(你也可以使用不是很經(jīng)常用到的命令chvt n 來(lái)實(shí)現(xiàn),n指的是第n個(gè)文本終端)。在文本終端下(不是在X窗口),你也可以簡(jiǎn)單使用ALTFn來(lái)實(shí)現(xiàn)切換,不需要CTRL鍵。打印出你正在使用的終端名稱,如果你希望知道終端的名字,可以使用命令fgconsole。
CtrlAltF7:切換到第一個(gè)圖形用戶界面(一般來(lái)說(shuō)X-window在第七個(gè)終端)
CtrlAltFn (n=7到12):切換到第n個(gè)圖形用戶街面。根據(jù)缺省,第一個(gè)X-Window在第7個(gè)終端運(yùn)行,從第8到第12什么也沒(méi)有,當(dāng)然你可以逐個(gè)啟動(dòng)這些圖形用戶界面。 Tab:(在文本終端下)可以使用TAB自動(dòng)完成命令,或者顯示所有的可選項(xiàng)。這個(gè)快捷鍵真的非常好用,經(jīng)常使用你會(huì)發(fā)覺(jué)它可以節(jié)約你很多的時(shí)間。
ArrowUp:(在文本終端或者X窗口下)滾動(dòng)和編輯以前輸入的命令。按ENTER執(zhí)行一個(gè)歷史命令。 ArrowDown:回滾。
[1] 每?jī)尚泻喜⒃谝黄?/p>
@dahuawk 'ORS=NR%2?" ":"\n"{print}'
[2] 每三行合并在一起
@dahuawk 'ORS=NR%3?" ":"\n"{print}'
[3] 每四行合并在一起
@dahuawk 'ORS=NR%4?" ":"\n"{print}'
[4] 統(tǒng)計(jì)std cell和sRam占的面積
@dahusummaryReport
[5] 找出drc的port相關(guān)的數(shù)量
@dahucat postroute_opt.drc | grep -B1 Type: | grep -v Type: | grep "\[" |-
[6] 獲得選中的pin的名字
@innovusdbget selected.name
[7]? 對(duì)一個(gè)文件,多目標(biāo)刪除
@dahused -i 's/MODE1\|MODE2\|MODE3\|MODE4\|MODE5//g'
[8] 獲得不規(guī)則fplan的坐標(biāo)組
@innovusdbget top.fplan.boxes
[9] 在某個(gè)目錄下找到帶某個(gè)字符的文件[區(qū)分大小寫(xiě)]
@dahufind -iname "*tcic*"
[10] 在某個(gè)目錄下,遍歷所有文件內(nèi)容,得到含有某個(gè)字符/字符串的行
@dahugrep -r 'insertion delay' ./
[11] 查看當(dāng)前的INNOVUS版本號(hào)
@dahuecho $INVS_VER
[12] 替換某個(gè)目錄下所有文件內(nèi)容
@dahused -i"s/查找的內(nèi)容/替換后的內(nèi)容/g"`grep -rl"查找的內(nèi)容"./`
[13] 在gui界面下highlight某條path
@dahu ctd_trace?-from * ?-to * ?-color *
[14] 引用${REV},為什么采用大括號(hào){}
為了防止引用造成后面錯(cuò)亂。
如:/fs/omp_com_03/RELEASE/top2hlb/R1/HLB_DEF/${REV}/${top}.def.gz
[15] 解壓命令
gzip -d FileName.gz
[16] 換某個(gè)cell的坐標(biāo) {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] 設(shè)置某一個(gè)cell不用
@innovus set_dont_touch BUFF false
@innovus set_dont_touch BUFF true
[18] 找某個(gè)性質(zhì)
@innovus dbSet [].?h
[19] 刪去空白行
vim 中:g/^s*$/d
簡(jiǎn)單解釋一下:
g :全區(qū)命令
/ :分隔符
^s*$ :匹配空行,其中^表示行首,s表示空字符,包括空格和制表符,*重復(fù)0到n個(gè)前面的字符,$表示行尾。連起來(lái)就是匹配只有空字符的行,也就是空行。
/d :刪除該行
[20] echo 寫(xiě)入帶有雙引號(hào)""的內(nèi)容。
echo ‘ “AAAbbb” ’ 1.tcl
[21] echo 寫(xiě)入帶有單引號(hào)‘’的內(nèi)容。
echo “ ‘AAAbbb' ” 1.tcl
[22] keep CPU 數(shù)目
@innovussetMultiCpuUsage -localCpu 16
@innovushistory keep 999999
[23] 打開(kāi)xlsm文件
openoffice.org 文件
[24] 顯示clock path路徑
@innovus report_timing -to XXX -path_type full_clock
[25]報(bào)出沒(méi)有被約束到的path
@innovus report_timing -to XXX -uncounstrained
[26]報(bào)出穿過(guò)path中的某一點(diǎn)
@innovus report_timing -to XXX -view
view = MODE + corner
[27] vim 全選(高亮顯示 ):按esc后,然后ggvG或者ggVG
[28]