-------------------------配置網路--------------------------
//檢視網絡卡
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...