C語言的一些簡單操作

2021-07-03 09:42:44 字數 4191 閱讀 6703

命令的基本格式:

命令名稱 -選項 引數

1.基本操作命令:

ls//列出某個目錄下的所有檔案 list

ls -adfhilr

h: human-readable

i: inode i節點編號,是系統用來區分檔案的標誌

r: recursive 遞迴

cd //切換目錄 change directory

cd  直接切換到當前使用者的家目錄

cd ~ 同上一行

.   表示當前目錄

..  表示當前目錄的上一級目錄

- 切換到上一次所在的目錄

!$  切換到上一條命令中的最後乙個目錄

pwd//檢視當前所在的目錄 print work directory

touch 檔名  //建立空檔案或者更新檔案的時間資訊

mkdir 目錄名  //建立目錄

-p a/b/c(巢狀的目錄)

mv  //移動,更名 move

mv ./a ./b //移動或改名

mv ./a ./b/c 移動兼改名

cp  //copy 拷貝

cp -rf a目錄 b目錄

cp -f a檔案 b檔案

cp -p a檔案 b檔案 //-p選項可以連同原始檔案的時間資訊也拷貝

rm  //移除,刪除 remove

-rf 強制刪除檔案或目錄

rm -rf 檔名/目錄名

cat 檔名 //檢視檔案內容,通常適合檔案行比較少的檔案

more 檔名 //分屏檢視檔案內容,space/enter向下翻屏/翻行,但是無法檢視之前檢視過的內容

less 檔名 //分屏檢視檔案內容,除了space和enter可用外,還可以用方向鍵的向上鍵和向下鍵往回或往下檢視

head -n 3 檔名 //<==> head -3 檔名  檢視檔案的頭3行

tail -n 3 檔名 //<==> tail -3 檔名  檢視檔案的尾3行

2.基礎知識:

1> 檔案的型別:用 ls -l 可以檢視

- 普通檔案(檔案檔案,可執行檔案)

d 目錄

l 軟連線檔案

c 字元裝置檔案

b 塊裝置檔案

s 套接字檔案(網路程式設計)

p 管道檔案(程序間通訊)

rwxrw-r-- 

其中r表示read, w表示write, x表示execute

系統中使用者的分類:

檔案的所有者:u 

檔案的所屬組:g

其他使用者:o

這所有的三類使用者:a

groups 使用者名稱 //檢視使用者屬於哪些組

grep 組名稱 /etc/group //檢視組內有哪些使用者

2> 終端提供了幾個萬用字元,用來匹配檔名的

*表示0個或任意個任意字元

?表示任意乙個字元

[mn] 表示匹配中出現的任意乙個字元

[m-n] 表示匹配中從m開始到n結束中的任意乙個字元

3> file 檔名/目錄名 顯示檔案的型別

4> grep 字串 檔名 //在檔案中提取指定的字串,如果存在,就列印所在行

grep -w //行中只要出現了這個完整的單詞就匹配

grep -x //行中只有這乙個單詞的才能匹配出來

5> 重定向輸入/輸入重定向  < 或 << 或 0< 或 0<<

cat << end > tmp  //將直到輸入「end」字串之前輸入的所有內容都被重定向覆蓋輸出到了tmp檔案中

cat << end >> tmp //將直到輸入「end」字串之前輸入的所有內容都被重定向追加輸出到了tmp檔案中

cat < file1 > file2 //輸入的**是從file1檔案獲得的,而不是從鍵盤獲得的,將獲得的這些內容定向覆蓋輸出到file2檔案中

cat < file1 >> file2 //輸入的**是從file1檔案獲得的,而不是從鍵盤獲得的,將獲得的這些內容定向追加輸出到file2檔案中

重定向輸出/輸出重

echo hello > 檔案  //將本應該顯示在標準輸出的hello定向(覆蓋)顯示到檔案中

echo hello >> 檔案 //追加hello到檔案

重定向錯誤輸出/錯誤輸出重定向 2> 或 2>>

ls -l abc 2> f_error //abc檔案如果不存在,會將錯誤訊息定向顯示到f_error檔案中;如果存在,f_error檔案什麼內容也沒有

ls -l abc file > f1 2>&1 //abc如果不存在,file存在,會將file檔案的詳細資訊定向到f1檔案中,abc不存在的錯誤訊息也同樣定向到f1檔案中

整個檔案的最後一行的開頭:

g某一行的最開頭:

行號gb)針對游標所在行行尾$

行首0 或者 ^ (0表示該行的第乙個字元,包括空白字元;^表示該行的第乙個非空白字元)

下一行的開頭

enter

c)游標所在字元周圍

h 向左

j 向下

k 向上

l 向右

d)將當前螢幕上游標所在行顯示在螢幕中間/最上一行/最下一行 

zz zt zb

e)將游標定位到當前螢幕的最中間一行/最上一行/最下一行

m h l

f)定位到游標所在字元處的後20個字元的位置

20space

2)複製和刪除

複製一行:yy

複製三行:3yy

刪除一行:dd

刪除三行:3dd

複製游標所在行到檔案的第一行之間的所有行:y1g

刪除游標所在行到檔案的第一行之間的所有行:d1g

複製游標所在行到檔案的最後一行之間的所有行:yg

刪除游標所在行到檔案的最後一行之間的所有行:dg

複製游標所在字元直到所在行行尾之間的所有字元:y$

刪除游標所在字元直到所在行行尾之間的所有字元:d$

複製游標所在字元直到所在行行首之間的所有字元:y0

刪除游標所在字元直到所在行行首之間的所有字元:d0

複製游標所在字元開始的3個單詞:y3w

刪除游標所在字元開始的3個單詞:d3w

3)貼上

p  7p

p  2p

4)撤銷操作

撤銷之前的一步操作:u

撤銷之前的三步操作:3u

撤銷游標所在行的所有操作:u

5)反撤銷

ctrl+r

6)查詢

/字串

按下n,向下定位

按下n,向上定位

7)插入連續的多個同一符號

數字i字元/字串,esc

舉例:30ihello 插入連續的30個hello

8)大小寫字元替換

定位,ctrl+v,u   //將選中的內容替換為大寫字元

定位,ctrl+v,u   //將選中的內容替換為小寫字元

--------------------

末行模式下的操作:

1)定位:

:10 定位到第10行開頭

2)複製:

:3,9y複製第3到第9行之間所有行

3)刪除:

:3,9d 刪除第3到第9行之間所有行

4)複製或刪除某一部分:

ctrl+v, 選中一塊,y或者d 

5)給指定行前面新增//

游標定位到需要新增//行的最上一行,ctrl+v,選中需要新增//的這些行,shift+i,插入//,esc

6)替換:

針對全文:

:%s/old/new/[g]

針對指定行:

:n1,n2s/old/new/[gc]

其中,g表示所有匹配的都替換

c表示詢問是否替換

刪除全文的所有內容:

方式1:在命令模式下按下ggvg, d

方式2::%d

刪除游標所在行連同下面所有行:

:.,$d

刪除游標所在行連同下面3行,都刪除:

:.,+3d

刪除游標所在行,連同下面三行中出現#字元或x字元的行:

:.,+3g/#\|x/d

刪除游標所在行,連同下面三行中出現的#字元和x字元:

:.,+3s/#\|x//g

-------

vim工具的配置檔案在~/目錄下,名稱是:..vimrc

vimtutor //vim的官方幫助手冊

C語言的一些騷操作 (一)

逗號用來連線兩個表示式,並以右邊的表示式的值為結果,逗號在所有運算子中先級最低。int n 1 2,2 3,4 5 n 1 取右邊最後乙個結果 int n 1 2,2 3,4 5 n 1 2 即 n 3短路與 左邊表示式是false,右邊就不執行,邏輯表示式值為false。短路或 左邊表示式是tru...

JQuery 一些簡單的操作

jquery 就是一些方法的封裝,類似jar包。匯入後,能夠直接呼叫的方法。如下 一般匯入壓縮包,原始碼留給自己看吧 0 0 document ready function 這個相當於window。onload functions 等待系統載入完全才執行的 jquery 中封裝了document.g...

odoo的一些簡單操作

fields.many2one 模型名 string project required true,ondelete cascade ondelete cascade 級聯 意思是關聯模型的記錄刪除了,本模型的記錄也會刪除要去除many2one欄位的 建立並編輯 選項,只要在view.xml裡對應的f...