linux基礎知識

2021-10-02 16:42:31 字數 2879 閱讀 2207

終端:一系列輸入輸出裝置的總稱

linux 中 所見皆檔案

根目錄下:

bin:存放二進位制可執行檔案

boot:存放開機啟動程式

dev:存放裝置檔案

etc:使用者資訊系統配合檔案

home:存放使用者

lib:庫檔案

usr:使用者資源管理目錄

root:管理員宿主目錄(家目錄)

linux系統檔案型別

普通檔案:-

目錄檔案:d

字元裝置檔案:c

塊裝置檔案:b

軟連線:l

管道檔案:p

套接字:s

未知檔案

ln -s hello hello.s

軟連線的內容為原始檔的路徑

為保證軟連線可以任意搬移,建立時 務必對原始檔使用絕對路徑

ln -s /home/dev/workspace/hello hello.s

相當於windows快捷方式

touch hello

ln hello hello.h

作業系統給每個檔案賦予唯一的 inode,當有相同inode的檔案存在時,彼此同步、

刪除時,只是將硬鏈結計數減一。減為0時,inode被釋放。

相當於原始檔 副本

建立使用者:

sudo adduser 新使用者名稱

修改檔案屬性

文字設定:

chmod u(g/o/a)+ r(w /x) 檔名

數字設定:

chmod  471 a.c    得 r-- rwx --x
修改檔案所屬使用者:

sudo  chown  新使用者名稱  待修改檔案
建立使用者組:

sudo addgroup 新組名
修改使用者組:

sudo chgrp 新組名 檔名
vim操作:

ctrl-d 向下翻半屏

ctrl-u 向上半屏

ctrl-f 向下一屏

ctrl-b 向上一屏

跳轉行首:

gg(命令模式)

跳轉行位:

g(命令模式)

自動格式化程式:

gg=g(命令模式)

大括號對應:

%(命令模式)
游標移至行首:

數字 0(命令模式)執行結束,工作模式不變

游標移至行位:

$(命令模式)執行結束,工作模式不變

刪除單個字元:

x(命令模式)執行結束,工作模式不變

刪除乙個單詞:

dw(命令迷失)游標置於單詞的首字母進行操作

刪除游標至行尾:

d(命令模式)

刪除游標至行首:

d0(命令模式)

刪除指定區域:

按 v(命令模式)切換為 可是模式,使用hjkl移動游標選中待刪除區域 按d刪除該區域資料

刪除指定一行:

dd(命令模式)

刪除指定n行:

游標待刪除首行,ndd

複製一行:

yy貼上:

p(向後)p(向前)

查詢:1.找 設想 內容:

命令模式 按 「/」 輸入欲搜尋關鍵字, 回車,n檢索下乙個

1.找 看到的內容:

命令模式, 將游標至於單詞任意乙個字元上 按「*」/ 「#」

單行替換:

將游標至於待替換行上,進入底行模式 輸入:s/原資料/新資料

通篇替換:

底行模式, :%s/原資料/新資料/g g:不加 只替換每行首個。

指定行的替換:

底行模式,:起始行號,終止行號 s/原資料/新資料/g g:不加 只替換每行首個

:29,35s/print/printn/g

撤銷,反撤銷:

u,ctrl+r

分屏:sp: 橫屏分,ctrl+ww 切換

vsp:豎屏分,ctr+ww 切換
跳轉man手冊:

將游標置於待檢視函式單詞上,使用k(命令模式)跳轉。指定卷 nk

檢視巨集定義:

將游標置於待檢視巨集定義單詞上,使用[d檢視定義語句

在底行模式執行shell命令:

:!命令 :!ls-l

gcc 4步驟:

1.預處理 gcc-e -> hello.i

展開巨集 標頭檔案 替換條件編譯 刪除注釋 空行 空白

2.編譯 gcc-s -> hello.s (消耗時間 系統資源最多)

檢查語法規範

3.彙編 gcc-c -> hello.o

將彙編指令翻譯成機器指令

4.鏈結 (無引數)

資料段合併 位址回填

main()

hello.o : main 0

func1 main+100

(鏈結後) funcl main +200

a.out : main 1000

func1 1000+100

func2 1000+200

-i 指定標頭檔案所在目錄

-c 只做預處理 編譯 彙編 得到二進位制檔案

-g 新增除錯資訊

-wall 顯示所有警告資訊

-d 向程式中 動態 註冊巨集定義

gcc出現錯誤判斷:

1.有行號 說明 編譯階段出錯

呼叫函式之前 未看到函式定義和宣告 編譯器會隱式宣告 只會宣告返回值為int的

2.無行號 說明鏈結階段出錯

linux基礎知識

舉例來說,硬碟的檔名稱即為 dev hd a d 其中,括號內的字母為 a d 當中的任何乙個,亦即由 dev hda,dev hdb,dev hdc,及 dev hdd 這四個檔案的意思 注 這種型式的表示法在後面的章節當中會使用得很頻繁,請特別留意 那麼光碟機與軟盤呢?分別是 dev cdrom...

Linux基礎知識

檔案系統 分割槽和掛載 linux 檔案系統是乙個檔案樹,它的所有檔案和外部裝置都是以檔案的形式掛結在這個檔案樹上,例如 usr local 目錄結構屬於分割槽 linux 下,分割槽屬於目錄結構。預設檔案系統一般為ext3 ext2的公升級版 分割槽包括主分割槽 擴充套件分割槽 邏輯分割槽和swa...

linux基礎知識

軟體環境 centos release 6.5 final 1 如何使vm虛擬機器上的centos連線到外網?1 把vm虛擬機器上的network connection設定為bridge模式 2 把網絡卡eth0配置資訊中的bootproto設定為dhcp 3 win7的cmd中輸入ipconfig...