C程式設計基礎day01

2021-08-20 19:19:30 字數 4024 閱讀 5385

/根目錄

/bin一般用來放工具

/home一般放使用者賬號密碼,使用者的東西

/lib一般放庫檔案

/usr/include一般放stdio.h等常用標頭檔案

ls -l 查詢檔案列表,以-開頭為普通檔案,以d開頭為目錄檔案,以b和c開頭為裝置塊檔案和字元裝置檔案,以l開頭為鏈結檔案, 以s代表管道檔案 ,以點.開頭檔案為隱藏檔案

ls -l stdio.h檢測檔案許可權。出現3組許可權,第一組描述的為檔案所有者的許可權,第二組為使用者組許可權,第三組為其他使用者許可權。舉例子如:rwx rw- r--

cat /etc/group 檢視組

cat /etc/passwd 檢視使用者組

sudo chmod o+w stdio.h 將本使用者增加寫的許可權

幫助--help  如: ls --help

man手冊檢視命令 如: man ls, 當乙個命令和函式重名的時候如printf, man printf 顯示的是printf命令的解釋。 man man printf顯示都有哪幾種printf, man 3 printf直接顯示函式printf的解釋

history 顯示敲過所有的命令

ls -a 所有

ls -h 人性化顯示檔案大小等。 注意ls -h 不指定查詢內容 顯示的大小是資料夾的大小不包括資料夾中檔案的大小。 若要顯示資料夾及裡邊檔案大小需要 ls -h 指定資料夾.

ls -l 列表方式

*萬用字元,如果真要輸入*話前邊加上反斜槓 \*,如touch \*.c

?也是萬用字元, 不過只替代乙個字元

萬用字元,如[1-9].c 找名稱為1~9的所有.c檔案

touch aaa.c 如果aaa.c不存在則建立,如果存在則修改檔案的時間。

>重定向, ls >text.txt 把原來ls顯示的內容寫道到text.txt檔案中,如果檔案不存在則建立。檔案存在話會把原來內容覆蓋。 >>表示原來的內容不覆蓋,把新內容追加到檔案後面

more 分屏顯示

|管道 一端的輸出作為另一端的輸入。 ls | grep std  通過管道輸出所有的std開頭的檔案

grep 文字搜尋。

clear 清除螢幕, 或者輸入ctrl+l

cd 切換工作目錄

只輸入cd 後邊

什麼都不加時進入使用者主目錄 cd /home/使用者目錄

.當前目錄,什麼也不寫也代表當前目錄。 cd ./lkp  等價於 cd lkp

..上級目錄

cd ~ 進入使用者主目錄 相當於 cd /home/使用者目錄

cd - 進入上乙個進入的目錄

mkdir 建立資料夾

mkdir a/b/c -p 建立乙個a中含b,b中含c的資料夾

rmdir 只能刪除目錄資料夾,並且資料夾必須是空的。若是資料夾不為空使用rm指令。

rm 刪除檔案,

rm -r    rm若刪除的是乙個資料夾, 必須後邊加乙個 -r.。 

rm -f  後邊加乙個 -f表示錯誤也不提示。

rm -i  後邊加乙個 -i每次刪除都提示是否刪除。

ln -s 1.txt abc.txt 建立軟連線:軟連線相當於windows的快捷方式,幾乎不占用記憶體。 刪除原始檔後,軟連線沒有意義。

cat 檢視文字內容 cat 1.txt

cat 1.txt 2.txt > 3.txt  該命令借助重定向合併成3.txt

grep 在文字中搜搜,  grep 查詢關鍵字  在哪個檔案中查詢, 若是想顯示行號後邊加 -n, 忽略大小寫後邊加-i,  取反查詢的話 **-v

grep "查詢的內容" 在哪個檔案中查詢, 或者grep '查詢的內容' 在哪個檔案中查詢,  或者grep 查詢的內容 在哪個檔案中查詢。 若是查詢字串最好加上雙引號

grep ^a text.txt -in 查詢以a開頭的行

grep ke$ text.txt -in 查詢以ke結尾的行

grep [ss]igna[ll] text.txt -in 查詢以signal signal signal signal的行

grep .abc text.txt -in  查詢乙個字元+abc的內容,點.只代表乙個字元。

不同命令使用的不一樣, grep不能使用*作為萬用字元查詢, grep這裡的是正規表示式不是萬用字元。

find 在磁碟中查詢檔案  find ./ -name *.c  在當前目錄下查詢所有.c檔案

find ./ -name [a-z]* 在當前目錄下查詢所有大寫字母開頭的檔案

find /temp -size 2m 在temp目錄下查詢大小等於2m檔案

find /temp -size -2m 在temp目錄下查詢大小小於2m檔案

find /temp -size +2m 在temp目錄下查詢大小大於2m檔案

find /temp -size +4k -size -5m 在temp目錄下查詢大於4k小於5m的檔案。

find ./ -perm

0777 在當前目錄下查詢許可權為777的檔案或目錄

cp 拷貝

cp -r 拷貝乙個資料夾為另外乙個資料夾時候一定要加-r

cp -v 顯示拷貝進度

cp -i 覆蓋檔案之前提示使用者進行確認

cp -a 該選項通常在複製目錄時使用,它保留連線、檔案屬性,並遞迴複製目錄。

cp -f 刪除已經存在的檔案也不提示

mv 移動檔案

mv -f  如有覆蓋也不提示。

mv -i 如果mv操作將導致對已存在的目標檔案的覆蓋,系統會詢問是否重寫,要求使用者避免誤覆蓋

mv -v 顯示進度

mv 123.txt ./cmd/abc.txt  移動123.txt 並改名字。

mv 123.txt abc.txt 對123.txt 進行改名字。

file獲取檔案的型別

tar  只負責打包和解包,不進行壓縮。打包後檔案總和可能變大。

打包 tar -

cvf 壓縮包名字.tar 需要打包的檔案    -v為顯示進度

解包 tar -

xvf 解包的名字  不指定路徑預設為當前路徑, 若指定路徑必須加乙個

-c指令 

tar -xvf aaa.tar

-c ../cmd

如何檢視某個資料夾的目錄  du  ./目錄 -h

gzip 壓縮或解壓縮tar包 , 壓縮指令為-r也可以不寫,加上-r必須制定壓縮後的名字, 解壓縮指令 -d

壓縮:gzip ***.tar  自動在當前路徑生成乙個字尾為***.tar.gz檔案

解壓:gzip -d ***.tar.gz  自動在當前路徑生成乙個字尾為***.tar檔案

打包和壓縮一步到位的辦法

壓縮 tar -c

zvf 壓縮包名字.gz 需要打包的檔案    -v為顯示進度  -z為壓縮  f指令一定放在最後邊

解壓 tar -x

zvf 壓縮包名字.gz  -c 制定解壓縮的目錄    -v為顯示進度  -z為壓縮  f指令一定放在最後邊, -c不使用的話解壓到當前

bzip2 類似 gzip, bzip2壓縮後的字尾為.bz2  不同的是gizp壓縮時候-r指令 在bizp2中為-z

打包和壓縮一步到位的辦法

壓縮 tar -c

jvf 壓縮包名字.bz2 需要打包的檔案    -v為顯示進度  -z為壓縮  f指令一定放在最後邊

解壓 tar -x

jvf 壓縮包名字.bz2  -c 制定解壓縮的目錄    -v為顯示進度  -z為壓縮  f指令一定放在最後邊, -c不使用的話解壓到當前

為了和windows通用又有了zip壓縮和unzip解壓縮指令

壓縮:zip -r 目標檔案(無副檔名)  原始檔      這裡-r必須加

which 檢視命令在哪存著

which ls

which gcc

ubuntu 桌面版盒伺服器版安裝了不同的軟體而已,沒有什麼區別,你也可以讓desktop的ubuntu使用server的核心

sudo apt-get install linux-image-server

uname -a

然後你就可以看到desktop變成server了

c 基礎學習Day01

c 基礎學習day01 計算機系統 計算機系統由硬體 軟體組成 指令系統是硬體和軟體的介面。計算機語言和程式設計方法 計算機語言 程式設計師與計算機溝通的語言 描述解決問題的方法和相關資料。計算機語言的級別 二進位制 構成的機器語言 使用助記符的組合語言 使用類似英語單詞和語句的高階語言 c 是物件...

Shell程式設計學習Day01

第乙個shell程式example.sh bin bash echo our first example echo empty line echo we are currently in the following directory pwdecho echo this directory cont...

DAY01 程式語言介紹

程式設計 寫 程式 軟體。程式設計的目的是 讓機器 比如計算機 按照人們事先為其編寫好的程式自發地去工作。機器語言是用二進位制 表示的計算機能直接識別和執行的一種機器指令的集合。優點 靈活 直接執行和速度快。缺點 不同型號的計算機其機器語言是不相通的,按著一種計算機的機器指令編制的程式,不能在另一種...