dos、git、linux中常見指令說明

工作中經常會用到一些計算機等指令,下面鵬哥統計了一下指令說明,方便自己以及大家平時工作中用。

【dos常見指令】

基礎命令

1 dir

無參數:查看當前所在目錄的文件和文件夾。

/s:查看當前目錄已經其所有子目錄的文件和文件夾。

/a:查看包括隱含文件的所有文件。

/ah:只顯示出隱含文件。

/w:以緊湊方式(一行顯示5個文件)顯示文件和文件夾。

/p:以分頁方式(顯示一頁之后會自動暫停)顯示。

|more:前面那個符號是“\”上面的那個,叫做重定向符號,就是把一個命令的結果輸出為另外一個命令的參數。more也是一個命令,dir /w |more得到的結果和dir /w /p的結果是一樣的。其他的參數大家可以用:dir/?查看。

2 cd

cd 目錄名:進入特定的目錄。如果看到有個目錄顯示為:abcdef ghi 就輸入:cdabcdef.ghi進入該目錄。

cd\ 退回到根目錄。

cd..退回到上一級目錄。

【git操作指令】

git help <command> # 顯示command的help

git show # 顯示某次提交的內容 git show $id

git co -- <file> # 拋棄工作區修改

git co . # 拋棄工作區修改

git add <file> # 將工作文件修改提交到本地暫存區

git add . # 將所有修改過的工作文件提交暫存區

git rm <file> # 從版本庫中刪除文件

git rm <file> --cached # 從版本庫中刪除文件,但不刪除文件

git reset <file> # 從暫存區恢復到工作文件

git reset -- . # 從暫存區恢復到工作文件

git reset --hard # 恢復最近一次提交過的狀態,即放棄上次提交后的所有本次修改

git ci <file> git ci . git ci -a # 將git add, git rm和git ci等操作都合并在一起做 git ci -am "some comments"

git ci --amend # 修改最后一次提交記錄

git revert <$id> # 恢復某次提交的狀態,恢復動作本身也創建次提交對象

git revert HEAD # 恢復最后一次提交的狀態

查看文件diff

git diff <file> # 比較當前文件和暫存區文件差異 git diff

git diff <id1><id1><id2> # 比較兩次提交之間的差異

git diff <branch1>..<branch2> # 在兩個分支之間比較

git diff --staged # 比較暫存區和版本庫差異

git diff --cached # 比較暫存區和版本庫差異

git diff --stat # 僅僅比較統計信息

查看提交記錄

git log git log <file> # 查看該文件每次提交記錄

git log -p <file> # 查看每次詳細修改內容的diff

git log -p -2 # 查看最近兩次詳細修改內容的diff

git log --stat #查看提交統計信息

tig

Mac上可以使用tig代替diff和log,brew install tig

Git 本地分支管理

查看、切換、創建和刪除分支

git br -r # 查看遠程分支

git br <new_branch> # 創建新的分支

git br -v # 查看各個分支最后提交信息

git br --merged # 查看已經被合并到當前分支的分支

git br --no-merged # 查看尚未被合并到當前分支的分支

git co <branch> # 切換到某個分支

git co -b <new_branch> # 創建新的分支,并且切換過去

git co -b <new_branch> <branch> # 基于branch創建新的new_branch

git co $id # 把某次歷史提交記錄checkout出來,但無分支信息,切換到其他分支會自動刪除

git co $id -b <new_branch> # 把某次歷史提交記錄checkout出來,創建成一個分支

git br -d <branch> # 刪除某個分支

git br -D <branch> # 強制刪除某個分支 (未被合并的分支被刪除的時候需要強制)

** 分支合并和rebase**

git merge <branch> # 將branch分支合并到當前分支

git merge origin/master --no-ff # 不要Fast-Foward合并,這樣可以生成merge提交

git rebase master <branch> # 將master rebase到branch,相當于: git co <branch> && git rebase master && git co master && git merge <branch>

** Git補丁管理(方便在多臺機器上開發同步時用)**

git diff > ../sync.patch # 生成補丁

git apply ../sync.patch # 打補丁

git apply --check ../sync.patch #測試補丁能否成功

Git暫存管理

git stash # 暫存

git stash list # 列所有stash

git stash apply # 恢復暫存的內容

git stash drop # 刪除暫存區

Git遠程分支管理

git pull # 抓取遠程倉庫所有分支更新并合并到本地

git pull --no-ff # 抓取遠程倉庫所有分支更新并合并到本地,不要快進合并

git fetch origin # 抓取遠程倉庫更新

git merge origin/master # 將遠程主分支合并到本地當前分支

git co --track origin/branch # 跟蹤某個遠程分支創建相應的本地分支

git co -b <local_branch> origin/<remote_branch> # 基于遠程分支創建本地分支,功能同上

git push # push所有分支

git push origin master # 將本地主分支推到遠程主分支

git push -u origin master # 將本地主分支推到遠程(如無遠程主分支則創建,用于初始化遠程倉庫)

git push origin <local_branch> # 創建遠程分支, origin是遠程倉庫名

git push origin <local_branch>:<remote_branch> # 創建遠程分支

git push origin :<remote_branch> #先刪除本地分支(git br -d <branch>),然后再push刪除遠程分支

Git遠程倉庫管理

GitHub

git remote -v # 查看遠程服務器地址和倉庫名稱

git remote show origin # 查看遠程服務器倉庫狀態

git remote add origin git@ github:robbin/robbin_site.git # 添加遠程倉庫地址

git remote set-url origin git@ github.com:robbin/robbin_site.git # 設置遠程倉庫地址(用于修改遠程倉庫地址) git remote rm <repository> # 刪除遠程倉庫

創建遠程倉庫

git clone --bare robbin_site robbin_site.git # 用帶版本的項目創建純版本倉庫

scp -r my_project.git git@ git.csdn.net:~ # 將純倉庫上傳到服務器上

mkdir robbin_site.git && cd robbin_site.git && git --bare init # 在服務器創建純倉庫

git remote add origin git@ github.com:robbin/robbin_site.git # 設置遠程倉庫地址

git push -u origin master # 客戶端首次提交

git push -u origin develop # 首次將本地develop分支提交到遠程develop分支,并且track

git remote set-head origin master # 設置遠程倉庫的HEAD指向master分支

也可以命令設置跟蹤遠程庫和本地庫

git branch --set-upstream master origin/master

git branch --set-upstream develop origin/develop

【linux常見指令說明】

ls   顯示文件或目錄

-l 列出文件詳細信息l(list)

-a 列出當前目錄下所有文件及目錄,包括隱藏的a(all)

mkdir 創建目錄

-p 創建目錄,若無父目錄,則創建p(parent)

cd 切換目錄

touch 創建空文件

echo 創建帶有內容的文件。

cat 查看文件內容

cp 拷貝

mv 移動或重命名

rm 刪除文件

-r 遞歸刪除,可刪除子目錄及文件

-f 強制刪除

find 在文件系統中搜索某文件

wc 統計文本中行數、字數、字符數

grep 在文本文件中查找某個字符串

rmdir 刪除空目錄

tree 樹形結構顯示目錄,需要安裝tree包

pwd 顯示當前目錄

ln 創建鏈接文件

more、less 分頁顯示文本文件內容

head、tail 顯示文件頭、尾內容

ctrl+alt+F1 命令行全屏模式

系統管理命令

stat 顯示指定文件的詳細信息,比ls更詳細

who 顯示在線登陸用戶

whoami 顯示當前操作用戶

hostname 顯示主機名

uname 顯示系統信息

top 動態顯示當前耗費資源最多進程信息

ps 顯示瞬間進程狀態 ps -aux

du 查看目錄大小 du -h /home帶有單位顯示目錄信息

df 查看磁盤大小 df -h 帶有單位顯示磁盤信息

ifconfig 查看網絡情況

ping 測試網絡連通

netstat 顯示網絡狀態信息

man 命令不會用了,找男人 如:man ls

clear 清屏

alias 對命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit

kill 殺死進程,可以先用ps 或 top命令查看進程的id,然后再用kill命令殺死進程。

打包壓縮相關命令

gzip:

bzip2:

tar: 打包壓縮

-c 歸檔文件

-x 壓縮文件

-z gzip壓縮文件

-j bzip2壓縮文件

-v 顯示壓縮或解壓縮過程 v(view)

-f 使用檔名

例:

tar -cvf /home/abc.tar /home/abc 只打包,不壓縮

tar -zcvf /home/abc.tar.gz /home/abc 打包,并用gzip壓縮

tar -jcvf /home/abc.tar.bz2 /home/abc 打包,并用bzip2壓縮

當然,如果想解壓縮,就直接替換上面的命令 tar -cvf / tar -zcvf / tar -jcvf 中的“c” 換成“x” 就可以了。

關機/重啟機器

shutdown

-r 關機重啟

-h 關機不重啟

now 立刻關機

halt 關機

reboot 重啟

Linux管道

將一個命令的標準輸出作為另一個命令的標準輸入。也就是把幾個命令組合起來使用,后一個命令除以前一個命令的結果。

例:grep -r "close" /home/* | more 在home目錄下所有文件中查找,包括close的文件,并分頁輸出。

Linux軟件包管理

dpkg (Debian Package)管理工具,軟件包名以.deb后綴。這種方法適合系統不能聯網的情況下。

比如安裝tree命令的安裝包,先將tree.deb傳到Linux系統中。再使用如下命令安裝。

sudo dpkg -i tree_1.5.3-1_i386.deb 安裝軟件

sudo dpkg -r tree 卸載軟件

注:將tree.deb傳到Linux系統中,有多種方式。VMwareTool,使用掛載方式;使用winSCP工具等;

APT(Advanced Packaging Tool)高級軟件工具。這種方法適合系統能夠連接互聯網的情況。

依然以tree為例

sudo apt-get install tree 安裝tree

sudo apt-get remove tree 卸載tree

sudo apt-get update 更新軟件

sudo apt-get upgrade

將.rpm文件轉為.deb文件

.rpm為RedHat使用的軟件格式。在Ubuntu下不能直接使用,所以需要轉換一下。

sudo alien abc.rpm

vim使用

vim三種模式:命令模式、插入模式、編輯模式。使用ESC或i或:來切換模式。

命令模式下:

:q 退出

:q! 強制退出

:wq 保存并退出

:set number 顯示行號

:set nonumber 隱藏行號

/apache 在文檔中查找apache 按n跳到下一個,shift+n上一個

yyp 復制光標所在行,并粘貼

h(左移一個字符←)、j(下一行↓)、k(上一行↑)、l(右移一個字符→)

用戶及用戶組管理

/etc/passwd 存儲用戶賬號

/etc/group 存儲組賬號

/etc/shadow 存儲用戶賬號的密碼

/etc/gshadow 存儲用戶組賬號的密碼

useradd 用戶名

userdel 用戶名

adduser 用戶名

groupadd 組名

groupdel 組名

passwd root 給root設置密碼

su root

su - root

/etc/profile 系統環境變量

bash_profile 用戶環境變量

.bashrc 用戶環境變量

su user 切換用戶,加載配置文件.bashrc

su - user 切換用戶,加載配置文件/etc/profile ,加載bash_profile

更改文件的用戶及用戶組

sudo chown [-R] owner[:group] {File|Directory}

例如:還以jdk-7u21-linux-i586.tar.gz為例。屬于用戶hadoop,組hadoop

要想切換此文件所屬的用戶及組??梢允褂妹睢?/p>

sudo chown root:root jdk-7u21-linux-i586.tar.gz

文件權限管理

三種基本權限

R 讀 數值表示為4

W 寫 數值表示為2

X 可執行 數值表示為1

jdk-7u21-linux-i586.tar.gz文件的權限為-rw-rw-r--

-rw-rw-r--一共十個字符,分成四段。

第一個字符“-”表示普通文件;這個位置還可能會出現“l”鏈接;“d”表示目錄

第二三四個字符“rw-”表示當前所屬用戶的權限。 所以用數值表示為4+2=6

第五六七個字符“rw-”表示當前所屬組的權限。 所以用數值表示為4+2=6

第八九十個字符“r--”表示其他用戶權限。 所以用數值表示為2

所以操作此文件的權限用數值表示為662

更改權限

sudo chmod [u所屬用戶 g所屬組 o其他用戶 a所有用戶] [+增加權限 -減少權限] [r w x] 目錄名

例如:有一個文件filename,權限為“-rw-r----x” ,將權限值改為"-rwxrw-r-x",用數值表示為765

sudo chmod u+x g+w o+r filename

上面的例子可以用數值表示

sudo chmod 765 filename

以上,結束。

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

推薦閱讀更多精彩內容

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,697評論 9 163
  • 1.感恩家人為我提供的一切,讓我每天都能看書,做我喜歡做的事情,最應該感恩的是我的爸爸媽媽,感恩他們從小讓我堅持自...
    楚澤清荷閱讀 203評論 0 0
  • 一束光 刺破夜的濃稠 也驅散了點點的星火 一顆寂寞的古樟 安靜擁抱著略含醉意的黎明 它悄悄告訴我 它還在等,等殘...
    三味夏天閱讀 353評論 10 9
  • 如果我足夠強大,你理不理我,都難在我心中泛起一點漣漪。——摘自劍圣喵大師 覺得很有道理,是我現在還不夠強大吧,所以...
    自南閱讀 508評論 0 0