linux知識學習,總結常用

2021-08-07 18:59:36 字數 4496 閱讀 5553

-------------------------配置網路--------------------------

//檢視網絡卡

ifconfig -a

//配置網絡卡ip和閘道器

ifconfig eth2 192.168.1.227 netmask 255.255.255.0 up

//重啟網絡卡

ifconfig eth2 up

//配置路由

route add default gw 192.168.1.1

//dns配置檔案

dns: /etc/resolv.conf

nameserver 114.114.114.114

nameserver 8.8.8.8

-------------------------shell 命令--------------------------

1.du  

(1)du -sh 目錄:檢視目錄所佔總大小

du -ah 目錄:檢視目錄下所有檔案分別所在大小

du -lh --max-depth=1 : 檢視當前目錄下一級子檔案和子目錄占用的磁碟容量。

(2)du常用的選項:

-h:以人類可讀的方式顯示

-a:顯示目錄占用的磁碟空間大小,還要顯示其下目錄和檔案占用磁碟空間的大小

-s:顯示目錄占用的磁碟空間大小,不要顯示其下子目錄和檔案占用的磁碟空間大小

-c:顯示幾個目錄或檔案占用的磁碟空間大小,還要統計它們的總和

2. cp -r 源目錄名 新目錄名:拷貝目錄及目錄下所有檔案

3. ./執行檔名 &:設定執行程序為後台程序,退出shell執行的命令可以繼續執行。

4. vi編輯器永久顯示行號

vi ~/.vimrc檔案中寫入 set nu 儲存推出。

5. ld 命令是gnu的聯結器,將目標檔案連線為可執行程式。

6. ln命令

ln命令用來為檔案創件連線,連線型別分為硬連線和符號連線兩種,預設的連線型別是硬連線。如 果要建立符號連線必須使用"-s"選項。 語法

ln(選項)(引數) 選項

-b或--backup:刪除,覆蓋目標檔案之前的備份;

-d或-f或——directory:建立目錄的硬連線;

-f或——force:強行建立檔案或目錄的連線,不**件或目錄是否存在;

-i或——interactive:覆蓋既有檔案之前先詢問使用者;

-n或--no-dereference:把符號連線的目的目錄視為一般檔案;

-s或——symbolic:對原始檔建立符號連線,而非硬連線;

-s《字尾備份字串》或--suffix=《字尾備份字串》:用"-b"引數備份目標檔案後,備份檔案的字  尾會被加上乙個備份字串,預設的備份字串是符號「~」,使用者可通過「-s」引數來改變它;

-v或——verbose:顯示指令執行過程;

-v《備份方式》或--version-control=《備份方式》:用「-b」引數備份目標檔案後,備份檔案的字尾  會被加上乙個備份字串,這個字串不僅可用「-s」引數變更,當使用「-v」引數《備份方式》指  定不同備份方式時,也會產生不同字尾的備份字串;

--version:顯示版本資訊。

7. cp -fp:強制拷貝檔案並保留原始檔或目錄的屬性

8. -m32為生成32位的動態鏈結庫,-m64位生成64位的動態鏈結庫。

g++ -m32 hello1.cpp -c -o hello1.o //編譯hello1.cpp 生成中間檔案hello1.o

g++ -m32 hello2.cpp -c -o hello2.o //編譯hello2.cpp 生成中間檔案hello1.o

ar rcs libhello.a hello2.o hello1.o //將hello1.o和hello2.o新增到靜態鏈結庫

g++ -m32 hello1.cpp hello2.cpp -fpic -shared -o ../lib/linux32/libhello.so

9. linux中變數#,@,0,1,2,*,$$,$?的含義

$# 是傳給指令碼的引數個數

$0 是指令碼本身的名字

$1 是傳遞給該shell指令碼的第乙個引數

$2 是傳遞給該shell指令碼的第二個引數

$@ 是傳給指令碼的所有引數的列表

$* 是以乙個單字串顯示所有向指令碼傳遞的引數,與位置變數不同,引數可超過9個

$$ 是指令碼執行的當前程序id號

$? 是顯示最後命令的退出狀態,0表示沒有錯誤,其他表示有錯誤

區別:@*

相同點:都是引用所有引數

不同點:只有在雙引號中體現出來。假設在指令碼執行時寫了三個引數(分別儲存在123)

則"*" 等價於"123"(傳遞了乙個引數);而"@" 等價於 "1""2" "$3"(傳遞了三個引數)

10. 檢視當前時間

date:     2023年 09月 03日 星期日 12:38:48 cst

date +"%h:%m:%s": 時(24小時制)分(00-59)秒(00-59)

date +"%y-%m-%d": 年  月(01-12)日(01-31)

-------------------------linux 環境下庫的編譯和安裝--------------------------

1. linux編譯jsoncpp

(2)scons工具編譯jsoncpp庫

安裝scons,直接在終端敲命令即可完成scons安裝。

sudo apt-get install scons  

(3)在終端jsoncpp-master目錄執行 scons platform=linux-gcc

(4)生成的動態庫和靜態庫:libs/linux-gcc-4.4.7/

libjson_linux-gcc-4.4.7_libmt.a

libjson_linux-gcc-4.4.7_libmt.so

2. linux編譯miracl

(miracl是乙個用c語言寫的,主要用來操作大數的密碼開發庫。)

(2) 新建目錄miracl,將zip包拷貝進去

(3)進入miracl目錄,解壓命令 unzip -j -aa -l miracl.zip

(4) 32位系統執行 bash linux;64位系統執行bashlinux64

(5) 測試編譯是否成功:./pk-demo,無報錯標誌編譯成功

(6) 測試執行正確但是並不表明安裝成功,為了避免出現以下錯誤:

fatal error: sys/cdefs.h: no such file or directory

$sudo apt-get purge libc6-dev

或者32位:

sudo apt-get install libc6-dev-i386

編譯完成之後生成鏈結檔案miracl.a,應該將其放在系統對應的/usr/lib

$cp /miracl/miracl.a /usr/lib/libmiracl.a

並且在/usr/include下面建立資料夾miracl,執行:

$cp /miracl/*.h /usr/include/miracl

呼叫miracl時便可直接在自己的程式標頭檔案中加入:

include

3. linux編譯openssl

(1) 安裝zlib

終端進入openssl-***目錄

(3) openssl預設安裝路徑是:/usr/local/ssl,

module type : dynamically and staticly loaded modules, *.so *.a。

prefix 是安裝目錄,openssldir 是配置檔案目錄,另外建議安裝兩次,shared 作用是生成動態連線庫。

openssl-***]# ./config  --prefix=/usr/local --openssldir=/usr/local/ssl  

openssl-***]# make  

openssl-***]# make install  

// 建議只生成動態鏈結庫  

openssl-***]# ./config shared --prefix=/usr/local --openssldir=/usr/local/ssl  

openssl-***]# make clean  

openssl-***]# make   

openssl-***]# make install

(4) 更新系統

vim /etc/ld.so.conf  

新增/usr/local/ssl,然後執行ldconfig。

(5) 使用

頭檔案目錄 /usr/local/ssl/include  

gcc編譯的時候加-lssl,同時指定libssl.so。

-------------------------makefile 選項--------------------------

1. cflags:指定標頭檔案的路徑,如cflags=-l/user/include

表示用於c編譯器的選項。

LINUX常用知識

linux常用知識 chkconfig是管理系統服務 service 的命令列工具。所謂系統服務 service 就是隨系統啟動而啟動,隨系統關閉而關閉的程式。chkconfig可以更新 啟動或停止 和查詢系統服務 service 執行級資訊。更簡單一點,chkconfig是乙個用於維護 etc r...

linux知識總結

linux知識總結3.更改檔案許可權設定的方式 命令名稱 chmod 執行許可權 所有使用者 功能描述 改變檔案或目錄許可權 語法 第一種方法 chmod 檔案或目錄 備註 u 所有者 g 所屬組 o 其他人 a 所有人 為使用者增加許可權 為使用者減少許可權 為使用者賦予許可權 r 讀許可權 w ...

Linux 知識總結

第 01 章 linux 基礎 第 02 章 linux 檔案和目錄管理 第 03 章 linux 磁碟和檔案系統管理 第 04 章 linux 壓縮與打包 第 05 章 linux vim編輯器 第 06 章 linux bash shell 第 07 章 linux 正規表示式 第 08 章 l...