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