在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

實用 Linux 命令行使用技巧集錦

馬哥Linux運維 ? 來源:未知 ? 作者:鄧佳佳 ? 2018-03-21 14:42 ? 次閱讀

下面介紹的都是一些命令行工具,這些工具在幾位回答者的日常工作中都很有用。對于任何不了解的命令,請使用“man “查看,或者使用Google。有些命令需要先用 yum, apt-get install 命令安裝。

1、基本命令

了解基本的bash

通讀整個bash man page.

學習VIM

Linux系統上,雖然你有Emacs和Eclipse,但是VIM仍然是無出其右的利器。

了解SSH,基本的無密碼驗證方式。

例如通過ssh-agent, ssh-add等。 《靈犀志趣》平時都使用如下腳本完成無密碼驗證,省事省力。

執行方式 sh nopasswd USER REMOTE_HOST

執行此腳本前,請確認:

—本機上已有 id_dsa.pub ,若無。 使用命令 ssh-keygen -t dsa 獲得。

—遠程機上登錄用戶家目錄下,已經有 .ssh 文件夾,若無創建之。

$ cat nopasswd #!/bin/shscp ~/.ssh/id_dsa.pub $1@$2:~/ssh $1@$2 " touch ~/.ssh/authorized_keys ; cat ~/id_dsa.pub >> ~/.ssh/authorized_keys; chmod 644 ~/.ssh/authorized_keys; exit"

熟悉Bash中常用的任務管理命令

&,Ctrl-Z,Ctrl-C,jobs,fg,bg,kill 等。

基本的文件管理命令

ls, ls-l, less, head, tail, tail -f, ln, ln -s, chmod, chown, du, du -sk *, df, mount

基本的網絡管理命令

ipconfig, ifconfig, dig

熟悉正則表達式,以及 grep,egrep用到的選項

-o, -A, -B

軟件安裝命令了解

apt-get 和 yum

cat -n:可以幫助顯示行號。

2 、一些表達式

!!

再次執行上一條命令

!$

上一條命令的最后一個單詞

{a..b}

按照從a到b順序的一個數字列表

{a,b,c}

三個詞a,b,c. 可以這樣使用 touch /tmp/{foo,bar,baz}

{$1-$9}

執行shell腳本時的命令行參數

$0

正在執行的命令名稱

$#

當前啟動的命令中傳入的參數個數

$?

上一條命令的執行返回值。

$$

該shell的進程號。

$*

從$1開始,啟動該shell腳本的所有參數。

3 、日常使用命令

Ctrl-R

在bash中, Ctrl-R用于在歷史命令中搜索

Ctrl-W, Ctrl-U, Alt-BackSpace

bash中,Ctrl-W刪除最后一個詞,Ctrl-U刪除最后一行, Alt-BackSpace 刪除光標前的一個詞 ;

man readline 中包含了大量bash中的默認熱鍵綁定;

cd -

返回前一個工作路徑

xargs

非常強大的命令。如果你還不確定是否能正確的執行任務,可以先用xargs echo查看。下面是一個用該功能的例子:

find . -name *.py | xargs grep some_functioncat hosts | xargs -l {} ssh root@{} hostname

parallel

一個更加強大的命令. 可以實現并行執行任務,并可以分割輸入文件, 指定多個節點同時運行命令等功能

pstree -p

打用進程樹的得力工具

pgrep,pkill

使用名字查找進程,或者直接向指定名字的進程發送信號

—了解用戶能發送給進程的一些信號。比如 kill -STOP [pid] ,讓pid進程掛起。

nohup,disown,screen, tmux

當你需要將進程永遠處在后臺運行是,這兩個命令很有用。

lsof, netstat -lntp

查詢當前什么進程在監聽什么端口。

set

在bash腳本中, 使用 set -x 獲得debug輸出,使用 set -e 獲得錯誤輸出。

;分號用于開啟一個子shell并運行至結束后關閉。 例如:

#在當前路徑下執行一些命令(cd /some/other/dir; other-command)# 工作路徑仍然是當前目錄

了解shell中的多種參數表達式

${name:?error message}

檢查某個變量是否存在,若不存在輸出 error message。

${var%suffix}, ${var#prefix}

輸出var變量除前綴或者后綴外的部分。如下面的代碼輸出為foo.txt.

var = foo.pdfecho ${var%pdf}.txt

<,>

輸入輸出重定向操作。

some_command > logfile 2>&1

將 some_command 運行過程中的標準輸出和標準錯誤輸出都輸出到文件logfile中。

man ascii

獲得一個好用的ASCII表格,包含10進制和16進制的值。

screen,dtach

在遠程ssh繪畫中,使用這兩個命令可以保存你的會話,避免因為網絡問題導致中斷。

curl, curl -l, wget

在web頁面調試中,這幾個命令能幫你下載網頁代碼,很有用。

lynx -dump -stdin

將HTML轉換為文本

xmlstarlet

需要處理XML時,這個命令很有用。

ssh -L, ssh -D

需要利用遠程服務器訪問網頁時,這命令可以幫助你在遠程服務器和你的機器之間建立ssh 隧道。

ssh連接優化

如下配置能幫你避免鏈接丟失,不需要每次都輸入yes確認和遠程服務器的鏈接,以及在鏈接中啟用壓縮。建議將它放到.ssh/config中。

TCPKeepAlive=yesServerAliveInterval=15ServerAliveCountMax=6StrictHostKeyChecking=noCompression=yesForwardAgent=yes

在正輸入的命令前加#

命令已經輸入一半,忽然間改主意想少收運行時,可以使用 Alt-# 在命令前加‘#’,將整個命令變成注釋。這樣你稍后就能在命令歷史中找到該命令了。

cron

可以幫助你制定一些定時執行的計劃任務。

Ctrl-S Ctrl-C

將一不小心需要大量輸出文本時,依次輸入這兩個操作,比單純的頻繁按Ctrl-C能更快讓程序終止。

4、 數據處理

sort,uniq, uniq -u, uniq -d

了解這些排序命令

cut,paste, join

了解這些文本文件的維護工具。很多人都在使用cut后,忘記join

使用sort/uniq進行集合的交、并、補運算=

假設a和b是兩個文本文件,其中的行都是唯一的。

如下幾個命令可以快速的實現一些集合操作。

cat a b | sort | uniq > c # c is a union bcat a b | sort | uniq -d > c # c is a intersect bcat a b b | sort | uniq -u > c # c is set difference a - b

使用LC_ALL=C

Linux中有關locale的設置會影響大量的命令行工具,其中包括排序工具。多數安裝的Linux系統都將LANG或者其他的locale默認設置成US English。但這可能會導致排序及其他命令慢上好幾倍。因此export LCALL=C能避免使用i18n形式處理數據,帶來性能提升。

awk,sed

這兩個工具能實現復雜的數據替換和修改。

例如,下面的命令實現對文本文件中低三列的數據求總和。使用shell完成此運算比用Python快3倍。

awk '{ x += $3 } END { print x }'

shuf

該命令可以從將一個文件中的行混洗,或者從中隨機選出一些行。

sort

了解sort的常用選項(-t,-k, -s)如何工作。 注意-k1,1只會排序第一列,而-k1會根據整個行排序。 -s能實現穩定排序。

例如,先使用第二個域排序,再按照域一排序,可以用這段命令實現:

cat INPUT_FILE | sort -k1,1 | sort -s -k2,2

制表符的輸入

在bash的命令行中,如若需要輸入制表符,可以使用 Ctrl-V 或者 $’ ’ 實現

hd,bvi

對于二進制文件,這兩個命令分別實現16進制抽取,二進制編輯操作。

strings,grep

可以幫助在二進制文件中尋找文本。

iconv,uconv

可以幫助轉換文本編碼

split,csplit

分別可以實現將文件按照大小分割,以及按照特定的模式分割。

5 、系統調試

iostat,netstat,top,atop,htop,dstat

可以幫助了解硬盤,CPU,內存,網絡的狀態。這能幫你對系統正在發生的情況有個第一認識。

free,vmstat

如果想了解內存的狀態,這兩個命令很重要。其中cached是Linux內核中文件緩存的大小。

kill -3

在調試Java程序時,使用此命令,可以在stderr/logs中找到完整的stack trace,堆信息(包含垃圾收集的細節).

mtr,traceroute

能夠幫忙找到網絡問題,前者比traceroute更好用。

iftop,nethogs

這兩個命令可以辦剛找出哪個端口或者進程占用了多少網絡帶寬。

ab,siege

這個Apache自帶的工具能幫助快速檢查web服務器的性能。

wireshark,tshark

是進行更高級的網絡調試的得力工具。

strace,ltrace

這兩個命令能幫你在一無所知的情況下,對程序運行失敗,假死,崩潰等問題帶來一些線索。

另外,他們還能幫忙發現一些性能問題。比如 -c選項可以做profiling;-p選項可以掛到某個指定的進程上。

ldd

檢查共享庫的情況

gdb

了解如何利用GDB連接到一個正在運行的進程,并且得到其stack trace。

/proc/

在做現場調試的時候很有用。比如 /proc/cpuinfo, /proc/XXX/cwd, /proc/XXX/exe, /proc/XXX/fd/, /proc/XXX/smaps

sar

在需要判斷為何過去某個時間系統會出錯時,這個命令能顯示CPU,內存和網絡的歷史情況。

stap, perf

當需要更深的分析系統,以及性能情況時,這兩個工具很有用。

dmesg

當系統出現一些很反常的現象時,比如可能是硬件或驅動問題時,這個很管用。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11351

    瀏覽量

    210498
  • Linux系統
    +關注

    關注

    4

    文章

    596

    瀏覽量

    27524
  • 命令行
    +關注

    關注

    0

    文章

    78

    瀏覽量

    10423

原文標題:實用 Linux 命令行使用技巧集錦

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    使用規則Powercfg命令行使用的語法有哪些

    /測試和診斷/Powercfg命令行選項組件,使用 powercfg.exe 來控制電源計劃(也稱為電源方案),以使用可用的睡眠狀態、控制單個設備的電源狀態,以及分析系統中常見的能效和電池壽命問題。使用規則Powercfg 命令行使用以下語法:powercfg /opti
    發表于 01-03 07:15

    caxa命令行中的應用

    caxa命令行中的應用 命令行對于大多用戶來說往往只是輸入數據的作用,但是其中的奧妙還有很多,下面就給大家
    發表于 10-18 18:18 ?2322次閱讀

    三層工業以太網交換機命令行使用指南v1.0

    三層工業以太網交換機命令行使用指南v1.0
    發表于 12-16 12:51 ?0次下載

    linux 命令行使用技巧

    我們每天使用許多Linux命令行。我們從網上知道一些技巧,但如果我們不去練習,我們就有可能忘記。我決定做一個關于技巧和竅門的列表,這些技巧和竅門對于你來說可能是已經忘記的,或者可能是全新的。 輸出
    發表于 09-28 15:54 ?0次下載
    <b class='flag-5'>linux</b> <b class='flag-5'>命令行使</b>用技巧

    Linux圖形界面的原理與構成和Linux命令行和vi編輯器的使用手冊

    本文檔的主要內容詳細介紹的是Linux基礎教案主要內容是:(1) 了解Linux圖形界面的原理與構成;(2)掌握Linux命令行操作,包括:命令行
    發表于 10-16 14:49 ?6次下載
    <b class='flag-5'>Linux</b>圖形界面的原理與構成和<b class='flag-5'>Linux</b><b class='flag-5'>命令行</b>和vi編輯器的使用手冊

    能提高效率的Linux命令行技巧

    巧妙的 Linux 命令行技巧能讓你節省時間、避免出錯,還能讓你記住和復用各種復雜的命令,專注在需要做的事情本身,而不是你要怎么做。以下介紹一些好用的命令行技巧。
    的頭像 發表于 02-02 17:39 ?2162次閱讀
    能提高效率的<b class='flag-5'>Linux</b><b class='flag-5'>命令行</b>技巧

    Linux 命令行教程好書推薦

    今天跟大家推薦個 Linux 命令行教程:《The Linux Command Line》,中文譯名:《Linux 命令行大全》。 該書作者
    的頭像 發表于 02-14 09:25 ?1518次閱讀

    Linux下播放器開發-Mplayer命令行使用介紹

    前面文章介紹了Linux下Mplayer播放的交叉編譯、移植,在命令行上成功運行了mplayer播放器,完成了視頻播放。mplayer支持二次開發,也支持命令行上直接使用;如果在命令行
    的頭像 發表于 08-14 09:10 ?7046次閱讀

    Linux命令行與shell腳本編寫

    Linux命令行與shell腳本編寫
    發表于 01-11 16:50 ?4次下載

    如何使用命令行Linux中查找文件?

    對于Linux新用戶來說,在Linux中查找文件可能有點困難。但是,在適當的指導下,任何人都可以創建文件快捷方式或找到其Linux系統中有多少文件。 我們必須使用命令行來查找文件或特定
    的頭像 發表于 03-23 14:55 ?4348次閱讀

    linux命令行與shell編程實戰

    Linux命令行與Shell編程實戰主要涉及以下內容: Linux命令行基礎:學習Linux命令行
    的頭像 發表于 11-08 10:57 ?854次閱讀

    linux虛擬機怎么調出命令行

    Linux虛擬機中調出命令行界面,可以通過以下步驟實現: 打開虛擬機,進入到Linux系統。 在桌面或應用菜單中找到終端或命令行圖標,點擊打開。 輸入
    的頭像 發表于 11-08 11:28 ?3209次閱讀

    linux切換到命令行模式

    Linux中,可以通過以下步驟切換到命令行模式: 打開終端。可以在應用菜單中找到終端或命令行終端。 在終端中輸入命令“exit”或“logout”,然后按回車鍵。 系統會提示您輸入管
    的頭像 發表于 11-13 16:47 ?1860次閱讀

    linux虛擬機怎么調出命令行

    Linux虛擬機是一種模擬運行Linux操作系統的虛擬環境,它可以在Windows、Mac、Linux等主機系統上運行。在Linux虛擬機中,你可以通過終端或
    的頭像 發表于 11-17 09:55 ?3853次閱讀

    linux命令行運行步驟

    運行Linux命令行涉及以下步驟: 打開終端 在Linux系統中,打開命令行界面的方式有多種,最常見的是打開終端應用程序。可以在應用程序菜單中找到終端,點擊打開。 熟悉
    的頭像 發表于 11-17 10:18 ?871次閱讀
    主站蜘蛛池模板: 欧美日本视频一区 | 国产区一区二区三 | 美女黄色在线看 | 国产黄视频在线观看 | tdg58在线观看 | 午夜h视频 | 在线久综合色手机在线播放 | 久久国产精品免费网站 | 久久男人的天堂色偷偷 | 2016天天干| 天堂中文在线资源 | 九色综合久久综合欧美97 | 国产一区二区三区在线影院 | 欧美巨大xxxx做受中文字幕 | 91大神成人偷拍在线观看 | 狠狠欧美| 欧美色插 | 一区一精品 | 88av视频在线| 四虎最新永久免费网址 | 色综合天天射 | 国产农村妇女毛片精品久久久 | 亚洲qingse中文久久网 | 天天做日日干 | 黄色在线观看视频 | 日本黄色免费网址 | 成人欧美一区二区三区黑人3p | 久久综合九色综合欧洲色 | 韩国三级视频 | h视频在线免费 | 午夜情趣视频 | 色丁香影院 | 日韩三级久久 | 久久美女精品 | 特黄色毛片 | 国产特级毛片aaaaaa毛片 | 天天看天天爽天天摸天天添 | 午夜国产视频 | 五月天丁香婷婷开心激情五月 | 女人张开腿让男人桶视频免费大全 | 日韩欧美卡一卡二卡新区 |