|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
尽我能力帮助他人,在帮助他人的同时你会深刻巩固知识。
上面先容的都是一些命令行工具,这些工具在几位回覆者的一样平常事情中都很有效。关于任何不懂得的命令,请利用“man<COMMANDNAME>“检察,大概利用Google。有些命令必要先用yum,apt-getinstall命令安装。
1基础命令
懂得基础的bash
通读全部bashmanpage.
进修VIM
在Linux体系上,固然你有Emacs和Eclipse,可是VIM仍旧是无出其右的利器。
懂得SSH,基础的无暗码考证体例。
比方经由过程ssh-agent,ssh-add等。《灵犀志趣》平常都利用以下剧本完成无暗码考证,费事省力。
实行体例shnopasswdUSERREMOTE_HOST
实行此剧本前,请确认:
- 本机上已有id_dsa.pub,若无。利用命令ssh-keygen-tdsa取得。
- 远程机上登任命户家目次下,已有.ssh文件夹,若无创立之。
- $catnopasswd#!/bin/shscp~/.ssh/id_dsa.pub$1@$2:~/ssh$1@$2"touch~/.ssh/authorized_keys;cat~/id_dsa.pub>>~/.ssh/authorized_keys;chmod644~/.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删除光标前的一个词manreadline中包括了大批bash中的默许热键绑定.
cd-
前往前一个事情路径
xargs
十分壮大的命令。假如你还不断定是不是能准确的实行义务,能够先用xargsecho检察。上面是一个用该功效的例子:- find.-name*.py|xargsgrepsome_functioncathosts|xargs-l{}sshroot@{}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:?errormessage}
反省某个变量是不是存在,若不存在输入errormessage。
${var%suffix},${var#prefix}
输入var变量除前缀大概后缀外的部分。以下面的代码输入为foo.txt.- var=foo.pdfecho${var%pdf}.txt
复制代码 <,>
输出输入重定向操纵。
some_command>logfile2>&1
将some_command运转过程当中的尺度输入和尺度毛病输入都输入到文件logfile中。
manascii
取得一个好用的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-SCtrl-C
将一不当心必要大批输入文本时,顺次输出这两个操纵,比纯真的频仍按Ctrl-C能更快让程序停止。
4数据处置
sort,uniq,uniq-u,uniq-d
懂得这些排序命令
cut,paste,join
懂得这些文本文件的保护工具。良多人都在利用cut后,健忘join
利用sort/uniq举行汇合的交、并、补运算=
假定a和b是两个文本文件,个中的行都是独一的。
以下几个命令能够疾速的完成一些汇合操纵。- catab|sort|uniq>c#cisaunionbcatab|sort|uniq-d>c#cisaintersectbcatabb|sort|uniq-u>c#cissetdifferencea-b
复制代码 利用LC_ALL=C
Linux中有关locale的设置会影响大批的命令行工具,个中包含排序工具。
多半安装的Linux体系都将LANG大概其他的locale默许设置成USEnglish。
但这大概会招致排序及其他命令慢上好几倍。
因而exportLCALL=C能制止利用i18n情势处置数据,带来功能提拔。
awk,sed
这两个工具能完成庞大的数据交换和修正。
比方,上面的命令完成对文本文件中低三列的数据求总和。
利用shell完成此运算比用Python快3倍。 shuf
该命令能够从将一个文件中的行混洗,大概从中随机选出一些行。
sort
懂得sort的经常使用选项(-t,-k,-s)怎样事情。注重-k1,1只会排序第一列,而-k1会依据全部行排序。-s能完成不乱排序。
比方,先利用第二个域排序,再依照域一排序,能够用这段命令完成- catINPUT_FILE|sort-k1,1|sort-s-k2,2
复制代码 制表符的输出
在bash的命令行中,如若必要输出制表符,可使用Ctrl-V<tab>大概$’ ’完成
hd,bvi
关于二进制文件,这两个命令分离完成16进制抽取,二进制编纂操纵。
strings,grep
能够匡助在二进制文件中寻觅文本。
iconv,uconv
能够匡助转换文本编码
split,csplit
分离能够完成将文件依照巨细支解,和依照特定的形式支解。
5体系调试
iostat,netstat,top,atop,htop,dstat
能够匡助懂得硬盘,CPU,内存,收集的形态。
这能帮你对体系正在产生的情形有个第一熟悉。
free,vmstat
假如想懂得内存的形态,这两个命令很主要。
个中cached是Linux内核中文件缓存的巨细。
kill-3<pid>
在调试Java程序时,利用此命令,能够在stderr/logs中找到完全的stacktrace,堆信息(包括渣滓搜集的细节).
mtr,traceroute
可以协助找到收集成绩,前者比traceroute更好用。
iftop,nethogs
这两个命令能够办刚找出哪一个端口大概历程占用了几收集带宽。
ab,siege
这个Apache自带的工具能匡助疾速反省web服务器的功能。
wireshark,tshark
是举行更初级的收集调试的得力工具。
strace,ltrace
这两个命令能帮你在一窍不通的情形下,对程序运转失利,假逝世,溃散等成绩带来一些线索。
别的,他们还能协助发明一些功能成绩。好比-c选项能够做profiling;
-p选项能够挂到某个指定的历程上。
ldd
反省共享库的情形
gdb
懂得怎样使用GDB毗连到一个正在运转的历程,而且失掉其stacktrace。
/proc/
在做现场调试的时分很有效。好比/proc/cpuinfo,/proc/XXX/cwd,/proc/XXX/exe,/proc/XXX/fd/,/proc/XXX/smaps
sar
在必要判别为什么已往某个工夫体系会堕落时,这个命令能显现CPU,内存和收集的汗青情形。
stap,perf
当必要更深的剖析体系,和功能情形时,这两个工具很有效。
dmesg
当体系呈现一些很变态的征象时,好比多是硬件或驱动成绩时,这个很管用。
网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rloginrcp、finger、mail、nslookup |
|