C高級自我學習(3)及Linux基礎

stastic特性應用

1,全局靜態變量
  • 內存中的位置:靜態存儲區
  • 初始化:未經初始化的全局變量會被程序自動賦值為0
  • 作用域:全局靜態變量再聲明他的文件之外是不可見的,從定義之處開始到文件結尾
    課本上的代碼編譯無法通過,不知問題出在什么地方
    靜態變量的好處
    1)不會被其他文件所訪問
    2)其他文件中可以使用相同的名字的變量,不會發生沖突
    局部變量可以和全局變量同名:在函數內訪問同名的變量時,會優先訪問局部變量;局部變量的作用域在那個循環體內的堆棧中,而全局變量存在于靜態區中,動態申請數據存在于堆中。
2,局部靜態變量
  • 和全局靜態變量不同的地方是作用域為局部作用域,作用于定義它語句開始到語句塊結束;
  • 用static修飾局部變量時,變量從原來的棧區變為了靜態區,離開作用域后后也不會銷毀,只是駐留在靜態區中無法被訪問。

課堂筆記

一,1,Ubuntu下的軟件安裝

Ubuntu軟件下載:packagename for Linux

  • 圖形化界面,Ubuntu軟件安裝中心
  • 命令行安裝:apt-get
    update:保證用戶的軟件包是最新的(安裝前建議更新)
    upgrade packagename:更新已安裝的軟件包
    install packagename:安裝軟件
    remmove packagename:卸載軟件包
  • dpkg 用來安裝下的packagename.deb軟件
    sudo dekg -i packagename.deb
  • 安裝軟件可能碰到的問題解決
    安裝之前更新源:
    sudo apt-get update
    安裝軟件:
    sudo apt-get install packagename
    或者
    sudo dgpk -i packagename.deb(必須提前下載此軟件包且路徑正確)
    情況一:
    若軟件不能正常安裝,執行下列語句,重新設置安裝環境
    sudo apt-get -f install
    然后再次執行安裝命令
    情況二:
    無法獲得鎖,資源被占用
    執行:ps -aux
    找到所有含apt-get的進程,使用kill命令殺死
    kill -9 PID
    PID:進程號
    然后再次執行安裝命令
  • pstree:進程樹
2,打包壓縮命令

tar -czvf filename.tar.gz
tar -xzvf 待解壓縮文件

3,用戶管理

useradd 增加用戶,使用時配合-m選項,創建宿主目錄
passwd 修改密碼
userdel 刪除用戶,配合-r選項,將用戶宿主目錄刪除

二,vi編輯器的使用

1,基本介紹:基于命令操作的編輯器
2,vi的安裝:sudo apt-get install vim
3,vim的配置文件
三種模式:

  • 命令模式:此模式下,所輸入的命令,不會顯,即在屏幕上,看不到用戶所輸入的命令(vi打開了默認就為命令模式),再輸入模式下,回到命令模式下,按esc
  • 輸入模式:
    此模式下,可以進入文件的編輯。
    進入輸入模式:在命令模式下輸入:i,o,O,a
    退出輸入模式:esc----->命令模式
  • 末行模式:
    在命令模式下,輸入進入末行模式
    4,輸入模式
    i:在當前光標之前插入正文
    a:在當前光標之后插入正文
    o:在當前光標所在下一行插入正文
    O:在當前光標所在上一行插入正文
    s:替換光標之前的字符
    5,命令模式
    文本的快捷操作
  • 行復制:yy(復制光標所在行的內容到緩存區)
    nyy:從光標所在行開始復制n行
  • 粘貼:p(粘貼至光標所在行的下一行)
    P(粘貼至光標所在行的上一行)
  • 字符復制:按v進入可視模式
    v:逐個字符復制,可從某一行的任意位置進行復制
    V:按行復制
    選中要復制的正文后,按y鍵進行復制,按p鍵進行粘貼
  • 刪除和撤銷
    dd:整行的刪除
    ndd:刪除此后的n行正文
    dw:刪除光標之后的一個字
    ndw:刪除光標之后的n個字符
    x:刪除光標所在的一個字符
    nx:刪除光標所在位置及其后的n個字符
  • u:撤銷
    rc:替換(用c代替當前字符,C可以是任意字符)
    nrc:用n個字符替換光標之前的n個字符
  • 行間快速跳轉
    H:跳轉到屏幕的最上方
    M:跳轉到屏幕的中間
    L:跳轉到屏幕的最下方
    nl
    gg:快速跳轉到第一行
    G:跳轉到最后一行
    6,末行模式
    :n 跳轉到指定行
    :q 退出
    :q! 強制退出
    :w 保存
    :w! 強制保存
    :wq 保存退出
    :wq! 強制保存退出
    :qa 全部退出(多文件編輯時)
    :wqa 全部保存退出
    :wa 全部保存

:nw file 將第n行寫入file文件
:a,bw file 將文件a 到 b 行寫入file文件
:l,.w file 將第一行到當前行寫入file文件
:f file 文件重命名
:f 打印文件的基本信息

字符串(string)搜索
/string
正向搜索,跳轉到第一次出現的位置;按字母n跳轉到下一次出現的位置;搜索完之后,會再次從文件頭開始搜索
?string
反向搜索,同上
多文件編輯
vi file file1 file2 file3 ...
分屏查看/編輯
vi -o file.doc file1.doc ...
豎屏分屏編輯
vi -O file.doc file1.doc ...
:vs file 豎屏分屏打開file文件
:sp file 橫屏分屏打開file文件
vi -x filename 文件加密

二、Shell腳本

1,簡介
優點:快速開發,無需編譯,事實修改
缺點:運行效率低,支持數據類型少
2,簡單的shell程序
echo "hello world!"
輸出hello world!并換行。
3,常量
數字常量:1 2 3 4 5
字符常量:a b c d e
字符串常量:"hello" "world"
4,簡單的變量使用
1)變量名=值
變量的賦值時等號兩邊不能有空格!
$:應用變量值
echo:輸出變量的值
2)變量名
變量名可以由字母,數字,下劃線組成,通常用大寫字母表示,便于區分。
變量名不能以數字開頭
3)變量的是使用
變量在使用的時候無需指定數據類型,shell是一個動態決定數據類型的語言。變量使用時直接賦值,即“變量名=值”。等號兩側無空格!!
變量在引用的時候,形式為:$變量名
常以形式:${變量名} 或者 “$變量名”或者“${變量名}”
4)變量的賦值
Shell里面變量的賦值均以字符串的形式賦值。
%m.nf浮點型的應用
m:輸出的總位數(加小數點位)
n:小數點后保留的位數
若小數部分+小數點+整數部分<m,則多出部分用空格代替輸出右對齊方式輸出
%-m.nf和以上的對齊方式不同

作業

1,熟練使用vi編輯器,并掌握常用命令
yy:復制,p:粘貼,v:逐個字符復制,dd:整行的刪除,u:撤銷,rc:替換,q:退出,:強制,w:保存,
2,練習Shell腳本的基本語法
變量名通常大寫
賦值時,通常都以字符串的格式賦值進去。
打印語句:printf "%d" ${NUM}
echo ${NUM}
3,實現字符串的拼接和分割

4,預習if,case,以及循環語句
已完成

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,732評論 6 539
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,214評論 3 426
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,781評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,588評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,315評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,699評論 1 327
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,698評論 3 446
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,882評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,441評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,189評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,388評論 1 372
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,933評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,613評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,023評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,310評論 1 293
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,112評論 3 398
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,334評論 2 377

推薦閱讀更多精彩內容

  • Ubuntu的發音 Ubuntu,源于非洲祖魯人和科薩人的語言,發作 oo-boon-too 的音。了解發音是有意...
    螢火蟲de夢閱讀 99,448評論 9 467
  • 基礎命令 主要的命令和快捷鍵 Linux系統命令由三部分組成:cmd + [options]+[operation...
    485b1aca799e閱讀 1,115評論 0 0
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數據革命閱讀 12,200評論 2 33
  • 12月8日的學習還是和昨天一樣,首先是昨天內容的回顧。感覺比昨天稍微好一些。然后就開始今天課程的內容了。一、基本命...
    彳亍的心閱讀 280評論 0 0
  • dpkg 學習 安裝mysql apt-get install mysql-server-5.6 apt-get ...
    sharonji閱讀 448評論 0 0