048 linux常用命令總結

2021-08-01 23:11:37 字數 4290 閱讀 6856

1,linux之sed用法:

sed是乙個很好的檔案處理工具,本身是乙個管道命令,主要是以行為單位進行處理,可以將資料行進行替換、刪除、新增、選取等特定工作,下面先了解一下sed的用法

sed命令列格式為:

sed [-nefri] 『command』 輸入文字

常用命令:

a ∶新增, a 的後面可以接字串,而這些字串會在新的一行出現(目前的下一行)~

c ∶取代, c 的後面可以接字串,這些字串可以取代 n1,n2 之間的行!

d ∶刪除,因為是刪除啊,所以 d 後面通常不接任何咚咚;

i ∶插入, i 的後面可以接字串,而這些字串會在新的一行出現(目前的上一行);

p ∶列印,亦即將某個選擇的資料印出。通常 p 會與引數 sed -n 一起運作~

舉例:

sed -n '1p' ab #顯示第一行

sed -n '$p' ab #顯示最後一行

sed -n '1,2p' ab #顯示第一行到第二行

sed -n '2,$p' ab #顯示第二行到最後一行

2,建立多層資料夾 :mkdir -p /test1/test2/test3 -p建立父類資料夾

3,chown root world.txt 更改為root使用者

chgrp root world.txt 更改為root使用者組

chown -r root test 更改整個資料夾為root使用者

chmod 755 world.txt

4,du 統計目錄(或檔案)所佔磁碟空間的大小。

du -h *

df -hl檢視磁碟空間

6,硬鏈結說白了是乙個指標,指向檔案索引節點,系統並不為它重新分配inode。可以用:ln命令來建立硬鏈結。

語法:

ln [options] existingfile newfile(***istingfile 待建立鏈結檔案的檔案,newfile是新建立的鏈結檔案)

ln [options] existingfile-list directory

-f 建立時,將同檔名刪除.

-i 刪除前進行詢問.

ln -s abc cde 建立abc 的軟連線

ln abc cde 建立abc的硬連線

7,解壓:tar -zxvf *.tar.gz

壓縮:tar -zcvf *.tar.gz 目錄

8,netstat -an | grep port 監聽埠的占用情況

新增當前目錄的檔案到環境變數;

export ld_library_path=./:$ld_library_path

9,vim操作:

在單詞之間跳轉,使用ctrl+左右鍵。ctrl+a跳到本行的行首,ctrl+e則跳到頁尾。ctrl+u刪除當前游標前面的文字 ctrl+k-刪除當前游標後面的文字ctrl+w和alt+d-對於當前的單詞進行刪除操作,w刪除游標前面的單詞的字元,d則刪除後面的字元alt+backsapce-刪除當前游標後面的單詞,如果刪除錯誤,使用ctrl+y進行恢復ctrl+l進行清屏操作

gg回到文章開頭

12gg跳到12行

1.按v進入visual狀態,選擇多行,用》或《縮排或縮出

函式查詢:

*:向上查詢; #:向下查詢

ctags使用:

vim字串替換:

:%s/test/test2/g

如果你使用以下命令進入,那麼就可以清楚的看到以「$」表示的換行符和以「^i」表示的製表符。

:set list

:set nolist

10,計算檔案內容行數:wc -l file

11,.vimrc 設定

1 syntax on

2 set number

3 set cindent

4 set backspace=indent,eol,start

5 set tabstop=4

6 set shiftwidth=4

7 let &termencoding=&encoding

8 set fileencodings=utf-8,gbk

9 set hls

.bashrc 設定

7 export lc_all=zh_cn.utf-8

8 export lang=zh_cn.utf-8

9 export language=zh_cn.utf-8

12,linux 定時器:crontab

格式如下:

minute hour day month week command

13,linux操作git

獲取**

1).git clone git@hostname:***.git

hostname為git伺服器

***為專案名稱

2).新增使用者資訊

cd  ***

修改 .git/config新增

[user]

name=wangzhigang-so

[email protected]

2.提交**

修改完**後執行下面命令:

1).git add . //這裡的點」.」表示所有修改的檔案,也可以指定單個檔案

2).git commit -m 「message」 //message不能為空,建議寫上本次提交修改簡單描述

3).git pull –rebase

4).git push git@hostname:*** head:refs/heads/master //推送到伺服器上

需要注意的是每次push提交到遠端伺服器前,應該先git pull –rebase

pull 會拉取伺服器最新**,和本地commit的**進行**合併,如果沒有衝突,會pull成功

反之會有衝突提示,這時需要解決衝突

3.更新** git pull –rebase //pull **時最好加上rebase引數,這樣**樹會比較簡單。

4.**比較 git diff

注意:當出現下面錯誤時,這是git 找不到你要提交的版本了:

no refs in common and

none specified; doing nothing.

perhaps you should specify a branch such as

'master'.

那請試試

git push origin master

linux下批量殺掉 包含某個關鍵字的 程式程序

有時候因為一些情況,需要把 linux 下符合某一項條件的所有程序 kill 掉,又不能用 killall 直接殺掉某一程序名稱包含的所有執行中程序(我們可能只需要殺掉其中的某一類或執行指定引數命令的程序),這個時候我們需要運用 ps, grep, cut 和 kill 一起操作。

ok,下面給出具體的參考:

ps -ef|grep local=no|grep -v grep|cut -c 9-15|xargs kill -9

執行這條命令將會殺掉所有含有關鍵字」local=no」的程序,是不是很方便?

下面將這條命令作一下簡單說明:

管道符」|」用來隔開兩個命令,管道符左邊命令的輸出會作為管道符右邊命令的輸入。

「ps -ef」 是linux裡檢視所有程序的命令。這時檢索出的程序將作為下一條命令」grep local=no」的輸入。

「grep local=no」 的輸出結果是,所有含有關鍵字」local=no」的程序。

「grep -v grep」 是在列出的程序中去除含有關鍵字」grep」的程序。

「cut -c 9-15」 是擷取輸入行的第9個字元到第15個字元,而這正好是程序號pid。

「xargs kill -9」 中的 xargs 命令是用來把前面命令的輸出結果(pid)作為」kill -9」命令的引數,並執行該命令。」kill -9」會強行殺掉指定程序。

其它類似的情況,只需要修改」grep local=no」中的關鍵字部分就可以了。

另一種方法,使用awk

ps x|grep gas|grep -v grep |awk 『』|xargs kill -9

在linux中正確匹配tab(退格):用 grep ′\t

′,如:

catd

elet

e.lo

g|gr

ep'\t'11$』\t』 |wc

Linux常用命令總結

下面這些命令是我在複習linux時記錄的,沒有詳解,只記錄了簡單的用法 檢視物理cpu個數 cat proc cpuinfo grep physical id sort uniq wc l 檢視物理cpu中core的個數,即核心數 cat proc cpuinfo grep cpu cores un...

LINUX常用命令總結

readlink f 找出符號鏈結所指向的位置 1g 到我檔案頭 g到檔案尾 cat瀏覽檔案 netstat a 檢視所有埠 mkdir 建立資料夾 rm rf 刪除檔案 執行指令碼 指令碼檔案 在當前目錄下 在目錄中查詢檔案 find 檔名 根目錄 當前目錄 剪下 mv vi命令 在檔案中搜尋關鍵...

Linux 常用命令總結

mkdir 建立目錄 ls l 顯示目錄或檔案 cd 切換目錄層次 cat n顯示行號 檢視檔案內容 cat demo.text eof 建立檔案 結尾eof退出編輯狀態 tac 反轉內容輸出 cp apr 拷貝檔案或者目錄 rm f 強制刪除檔案 r 遞迴刪除 刪除檔案或目錄 fr 刪除指定的目錄...