Linux指令和vim編輯器指令

Linux指令

cd ~ ( 'cd' <=> change directory )回到根目錄所在位置;
cd - 回到上次目錄所在位置;
pwd 顯示當(dāng)前位置的路徑;

ls -a(顯示包含目標(biāo)目錄下的隱藏文件。以".a"開頭命名的文件會自動隱藏,正常模式下我們看不到);
ls -l (以列表形式顯示);
ls -h (以合適的單位來顯示文件大小);
ls -a -l -h (等效于ls -alh,命令的順序不影響作用,例如:ls -a -l -h 等效于 ls -a -h -l);
llls -la 命令等效;

文件或文件夾操作(剪切、復(fù)制、刪除、打開)

mkdir -p A 創(chuàng)建文件夾A, mkdir也可以創(chuàng)建嵌套的文件夾,如下:
mkdir -p A/B/C/D (Linux下是mkdir A/B/C/D -p),表示在A文件夾下的B文件夾下的C文件夾下創(chuàng)建D文件夾。關(guān)于-p指令的作用:如果其中有某個層級不存在,系統(tǒng)會自動幫我們創(chuàng)建缺少的層級(例如A文件夾下面沒有B,也就不存在C文件夾了,這個時候系統(tǒng)自動幫我們在A下創(chuàng)建B,然后在B下創(chuàng)建C,再在C下創(chuàng)建文件夾D)。

cp me.txt A/B/me.txt復(fù)制到當(dāng)前目錄下的路徑A/B/中;

mv指令的兩點作用:
mv A AA 將文件夾A改名為AA,mv也可以修改文件的名稱mv 2.txt file.txt表示將文件2.txt重命名為file.txt;
mv me.txt AA/ 將'me.txt'文件移動到當(dāng)前目錄下的路徑AA/中;

rm 刪除指令(rm 就是 remove的縮寫形式);
刪除文件夾時使用 rm + 文件夾名,一般提示無法刪除,需要使用rm -r 文件夾名or文件名,例如rm -r D(Linux系統(tǒng)是rm D -r,可以通過rm —help指令查看rm指令在該系統(tǒng)下有哪些操作指令,沒必要強記),表示刪除D文件夾。 -r指令其實就是遞歸刪除。

open 文件名 打開文件(打開后可以自由編輯。在Linux上,可以使用gedit指令打開文件并自由編輯,可惜Unix上面沒有g(shù)edit)。[Tips:倘若該文件名太長不方便輸入,可以敲入文件名的前1~n個字母,然后按tab鍵,終端會智能匹配最合適的文件名]
open 文件夾名稱 顯示文件夾。例如:open Test,會打開Finder顯示當(dāng)前目錄下的Test文件夾,功能類似于show in Finder。
也可以使用通配符指令,如:open *.txt打開當(dāng)前目錄下的所有.txt文件。

cat 文件名 查看文件內(nèi)容,直接將文件內(nèi)容顯示在終端上面;

touch file.txt 新建一個file.txt文件。如果需要編輯,可以使用open file.txt 命令打開文件,然后自由編輯。也可以使用gedit(Unix上面gedit指令無效??);

history 指令用于查看歷史指令記錄。所有近期使用的指令都會按先后順序列舉出來,如 :

...省略前面n多條指令...
555 ..............................
566  cat vimTest.txt 
567  ls
568  open vimTest.txt 

此時,我們可以通過 ! 序號 (例如:!568),我們自己的terminate此時即執(zhí)行對應(yīng)需要的指令,這里!568表示 終端列表上面第568條指令,即open vimTest.txt指令。

通配符

通配符有兩種:
① *, *可以匹配0~n位;
② ?, ?只能匹配一位;
ls 1[1234]1.txt 也是通配符,表示只通配111.txt、121.txt、131.txt、141.txt這幾個選項;
ls 1[1-4]1.txt 等價于ls1[1234]1.txt,都表示中間只能是111.txt、121.txt、131.txt、141.txt這幾個選項。

重定向

ls > xxx.txt 表示將當(dāng)前文件夾下面ls指令應(yīng)該顯示出來的信息輸入到xxx.txt文件中;
ls -alh > xxx.txt "ls -alh"指令應(yīng)該顯示的信息輸入到xxx.txt文件中;
ls -alh >> xxx.txt 追加文件內(nèi)容到xxx.txt中;
>>>的異同點:
相同點:如果之前的文件xxx.txt不存在,這兩者都會新建一個xxx.txt文件的。
不同點:>>會往文件中追加內(nèi)容,> 會覆蓋原來的文件中的內(nèi)容。

more 命令

ls | more指令可以結(jié)合使用。這樣可以不通過重定向這一步驟將文件寫入到指定的文檔中再查看。直接ls | more可以翻頁查看,|表示通道的意思。

ls ; ls -alh 多個命令一起使用的時候,中間用;(英文分號)隔開;但是一般不這樣用,畢竟低效嘛(這就好比買了輛法拉利,在高速上面開20km/h??)

control c 撤銷已經(jīng)輸入的指令(不執(zhí)行已輸入的指令。情景:一段指令輸入錯誤,由于指令太長,刪除起來麻煩,可以直接control+c另起一行,重新輸入)。友情提示:control+c會不會與系統(tǒng)的熱鍵重復(fù)?比如Mac上面QQ的截圖功能就是control+c,如果想使用該鍵,可以在QQ的偏好設(shè)置中修改QQ的截圖熱鍵。

cat a.txt b.txt >> c.txt (將a.txt 與b.txt文件內(nèi)容合并到c.txt文件中,如果c.txt不存在,就自動創(chuàng)建c.txt)

grep "1" c.txt 在c.txt中查找含1的字段;
grep "^1" c.txt 在c.txt中查找開頭為1的字段;
grep "xt$" c.txt 在c.txt中查找末尾為xt的字段;

image
image
image
image
image
image
軟鏈接和硬鏈接

ln -s file.txt soft-link.txt 為file.txt創(chuàng)建一個軟鏈接,軟鏈接名稱為 soft-link.txt;
ln -s file.txt soft-link.txt

cat b.txt >> c.txt 將b.txt文件內(nèi)容追加到c.txt中;

echo "I am fine!" >> me.txt 寫入一段連續(xù)的字符串到me.txt文件中;

cat << EOF >> me.txt 
> I am fine.
> Thanks.
> Have a good trip.
> EOF  

通過cat << EOF EOF的形式可以借助終端寫入多段內(nèi)容到me.txt中。

grep指令

grep 用來從文件里面搜內(nèi)容

image
打包、解包、壓縮、解壓縮指令

tar -cvf test.tar *.txt 打包(test.tar打包后文件名, *.txt 該目錄下需要打包的文件類型)
tar -xvf test.tar 解包

tar -zcvf test.tar.gz *.txt 壓縮(test.tar壓縮后文件名, *.txt 該目錄下需要壓縮的文件類型)
tar -zxvf test.tar.gz 解壓縮;

tar -jcvf test.tar.bz2 *.txt 這種方式壓縮后體積比.gz方式的大一點;
tar -jxvf test.tar.bz2 解壓縮;

zip test.zip *.txt .zip方式的壓縮;
unzip test.zip .zip解壓縮命令;

unzip -d ./test test.zip -d + ./xxx 指令表示支持解壓到當(dāng)前目錄中test文件夾下;

tar -zxvf test.tar.gz -C ./GZ (tar.gz方式解壓到指定路徑)

unzip -d ZIP test.zip (zip方式解壓到指定路徑)

date "+%T-%Y-%m-%d"

image
查看程序占用內(nèi)存情況

ps aux 查看內(nèi)存占用情況,不直觀;
top 查看內(nèi)存使用情況(直觀);
kill -9 內(nèi)存PID號 強制殺掉PID號對應(yīng)的進(jìn)程;

文件權(quán)限基礎(chǔ)及操作

drwxr-xr-x 5 zhouyong staff 160B 4 21 14:28 BZ2
擁有者 u
同組者 g
其讓人 o
chmod u=rx c14.txt
chmod u=r,g=r,o=r c14.txt (同時設(shè)置擁有者、同組者、其他人的權(quán)限)

chmod 修改文件權(quán)限,有兩種方式:
① "字母法",也就是上述 u、g、o;
② “數(shù)字法”,其中r w x位分別用 4 2 1數(shù)字表示有效,則指令chmod 7 4 1 test.txt表示設(shè)置 test.txt文件的權(quán)限等價為:chmod u = rwx,g=w,o=x test.txt;

系統(tǒng)重啟、關(guān)機(jī)(定時)

sudo shutdown -h now 立即關(guān)機(jī);
sudo reboot 重啟計算機(jī);
sudo shutdown -h +10 十分鐘后自動關(guān)機(jī);
sudo shutdown -r now 重啟計算機(jī);
sudo shutdown -r +1 一分鐘后重啟計算機(jī);

vim 指令:

vim xxx.py 打開xxx.py文件,如果xxx.py文件不存在,就自動創(chuàng)建一個xxx.py文件;
i 表示切換到輸入模式,esc退出輸入模式,并切換到指令模式;
yy 復(fù)制光標(biāo)所在行內(nèi)容;
pp 粘貼拷貝的內(nèi)容 ;

esc 回到命令模式;
a ,i均可切換到編輯模式。區(qū)別:a為在光標(biāo)后面插入, i為在光標(biāo)前面插入;
o命令切換到下一行;O切換到光標(biāo)所在行的上一行; 命令模式A插入到光標(biāo)所在行的行尾;I`插入到光標(biāo)所在行的行首;

n yy (n為數(shù)字) ,表示復(fù)制光標(biāo)行開始的n行。如5 yy,則從光標(biāo)位置開始往下復(fù)制5行內(nèi)容;
dd 刪除光標(biāo)所在的行。n dd(n為數(shù)字),表示從光標(biāo)所在行開始往下刪除n行內(nèi)容;

dd 其實是剪切的功能, dd之后可以使用p粘貼剪切的內(nèi)容;

光標(biāo)定位功能

M 定位到屏幕可見區(qū)域中央;
L 定位到屏幕可見區(qū)域最下部;
H 定位到屏幕可見區(qū)域最上部;

control f 下一頁
control b 上一頁
control u 向上半屏
control d 向下半屏

n G 快速定位到第n行。
n G 快速定位到第n行代碼。如18G,快速定位到第18行;
G 快速回到整個代碼最后一行;
gg 快速回到代碼的第一行;

w, 以單詞進(jìn)行劃分,向后跳一個單詞的長度,調(diào)到下一個單詞的開頭;
b,向前跳一個單詞的長度,調(diào)到上一個單詞的開頭;

D 從當(dāng)前的光標(biāo)開始剪切,一直到行末;
d0 從當(dāng)前光標(biāo)開始剪切,一直到行首;

u 撤銷剛剛的操作;
control r 反撤銷;
x 刪除當(dāng)前的光標(biāo)后面的元素,每次只刪除一個元素;
X 刪除當(dāng)前光標(biāo)前面的元素,每次只刪除一個元素;

選中一片代碼:

v
V
>> 向右移動代碼;
<< 向左移動代碼;
. 重復(fù)執(zhí)行上一次命令。

{ 跳到光標(biāo)所在段的段首;
} 跳到光標(biāo)所在段的段尾;

dw 刪除光標(biāo)所在位置的這個單詞的,光標(biāo)的后面字符,包含光標(biāo)所在的字符

r 替換當(dāng)前字符;
R 替換當(dāng)前行光標(biāo)后的字符;

查找命令:

/ str查找
n 下一個
N 上一個

替換:

:%s/hello/hi/g 將hello全部替換為hi;
:11,16s/hello/hi/g 將line11~line16中的hello全部替換為hi;

末行模式:

w保存
q 退出
wq 保存并退出

shift zz 相當(dāng)于wq

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 【原創(chuàng)博文,轉(zhuǎn)載請注明出處!】一些比較常用的Unix指令和vim指令,很長一段時間不用就遺忘了,每次寫腳本的時候還...
    RephontilZhou閱讀 1,359評論 3 6
  • Linux習(xí)慣問題: 在vim編輯時,按了ctrl + s后,再按ctrl + q就可以繼續(xù)執(zhí)行了。ctrl + ...
    光著腳的鞋閱讀 4,709評論 0 16
  • 一、Python簡介和環(huán)境搭建以及pip的安裝 4課時實驗課主要內(nèi)容 【Python簡介】: Python 是一個...
    _小老虎_閱讀 6,356評論 0 10
  • 基礎(chǔ)命令 主要的命令和快捷鍵 Linux系統(tǒng)命令由三部分組成:cmd + [options]+[operation...
    485b1aca799e閱讀 1,234評論 0 0
  • 第一章 1.Linux是一套免費使用和自由傳播的類UNIX操作系統(tǒng),它可以基于Intel x86系列處理器以及Cy...
    yansicing閱讀 5,597評論 0 9

友情鏈接更多精彩內(nèi)容