《最强Linux命令总结建议收藏!.docx》由会员分享,可在线阅读,更多相关《最强Linux命令总结建议收藏!.docx(33页珍藏版)》请在第壹文秘上搜索。
1、最强Linux命令总结,建议收藏!基本操作1.inux关机,重启# 关机# 重启shutdown-rnow查看系统,CPU信息# 查看系统内核信息# 查看系统内核版本catprocversion# 查看当前用户环境变量# 查看有几个逻辑cpu,包括CPU型号#查看有几颗cpu,每颗分别是几核# 查看当前CPU运行在32bit还是64bit模式下,如果是运行在32bit下也不代表CPU不支持64bit# 结果大于0,说明支持64bit计算.Im指Iongmode,支持Im则是64bitcatproccpuinfogrepflagsgrep,Im,wc-1建立软连接In-Susrlocaljdkl
2、.8jdkrpm相关# 查看是否通过rpm安装了该软件rpm-qagr叩软件名sshkey# 创建sshkey#id_rsa.pub的内容拷贝到要控制的服务器的homeusername.ssh/authorized_keys中,如果没有则新建(.ssh权限为700jauthorized_keys权限为600)命令重命名# 在各个用户的.bash_profile中添加重命名配置aliasll=ls-alF同步服务器时间sudontpdate-untp.api.bz后台运行命令# 后台运行,并且有nohup.out输出# 后台运行,不输出任何日志# 后台运行,并将错误信息做标准输出到日志中nohu
3、pXXXout.log2&1&强制活动用户退出# 命令来完成强制活动用户退出.其中TTY表示终端名称pkill-kill-tTTY查看命令路径which命令查看进程所有打开最大fd数ulimit-n配置dnsvimetcresolv.confnslookup,查看域名路由表Iastf最近登录信息列表# 最近登录的5个账号last-n5设置固定ipifconfigeml192.168.5.177netmask255.255.255.0另外,如果你近期准备面试跳槽,建议在Java面试库小程序在线刷题,涵盖2000道Java面试题,几乎覆盖了所有主流技术面试题。查看进程内加载的环境变量# 也可以去c
4、d/proc目录下,查看进程内存中加载的东西PSeww-PXXXXX(进程号)查看进程树找到服务器进程psauwxf查看进程启动路径cd#cwd对应的是启动路径添加用户,配置SUdo权限#新增用户#增加sudo权限#修改文件里面的#rootALL=(ALL)ALL#用户名ALL=(ALL)ALL强制关闭进程名包含XXX的所有进程psauxIgrepxxxgrep-vgrepIawk,print$2xargskill-9磁盘,文件,目录相关操作vim操作#nOrmal模式下g表示全局,X表示查找的内容,y表示替换后的内容#normal模式下#光标移到行首(数字0)#光标移至行尾shift#跳到文
5、件最后#跳到文件头# 显示行号:setnu# 去除行号:setnonu# 检索#从头检索,按n查找下一个?xxx(检索内容)#从尾部检索打开只读文件,修改后需要保存时(不用切换用户即可保存的方式)#在normal模式下:W!sudotee%查看磁盘,文件目录基本信息#查看磁盘挂载情况# 查看磁盘分区信息# 查看目录及子目录大小# 查看当前目录下各个文件,文件夹占了多少空间,不会递归du-sh*WC命令# 查看文件里有多少行# 看文件里有多少个WOrd#文件里最长的那一行是多少个字#统计字节数WC-C常用压缩,解压缩命令压缩命令zip-rxxx.zip压缩目录解压缩命令#解压到指定文件夹tarz
6、xvfXXX.tarunzipxxx.zip变更文件所属用户,用户组chowneagleye.eagleyexxx.logcp,scp,mkdir#复制#复制并强制覆盖同名文件#复制文件夹#远程复制#级联创建目录#批量创建文件夹,会在test,main下都创建java,resources文件夹mkdir-psrctest,main)java,resources)比较两个文件diff-ul.txt2.txt日志输出的字节数,可以用作性能测试#如果做性能测试,可以每执行一次,往日志里面输出,这样日志中的字节数就是实际的性能测试运行的次数,还可以看见实时速率.tail-fxx.logIpv-bt查看
7、,去除特殊字符#查看特殊字符#去除特殊字符sed-i,sMg,env.sh去除文件的特殊字符,比如八M:需要这样输入:ctrl+v+enter处理因系统原因引起的文件中特殊字符的问题#可以转换为该系统下的文件格式#先将file.Sh中文件内容复制下来然后运行,然后粘贴内容,最后Ctrl+d保存退出#在vim中通过如下设置文件编码和文件格式:setfileencodines=utf-8,然后W(存:setfileformat=uni# 在mac下使用dos2unix进行文件格式化find,-name*.shargsdos2unix推荐学习:SpringBoot最新学习路线图来了,16个模块,小白
8、都能学会!teef重定向的同时输出到屏幕awkfprint$0,x.logteetest.log检索相关grep# 反向匹配,查找不包含XXX的内容# 排除所有空行grep-Vpre# 返回结果2,则说明第二行是空行grepn八$lll.txt# 查询以abc开头的行grep-nffabcwlll.txt# 同时列出该词语出现在文章的第几行grep,xxx,-nx.log# 计算一下该字串出现的次数grep,xx,-cx.log# 比对的时候,不计较大小写的不同grepxxx-ixxx.logawk#以:为分隔符,如果第五域有USer则输出该行awk-F,:,if($5/user/)print
9、$0/etc/# 统计单个文件中某个字符(串)(中文无效)出现的次数awk-VRS=character,ENDprint-NRxxx.txtfind检索命令# 在目录下找后缀是mysql的文件findhomeeagleye-name,*.mysql,-print# 会从usr目录开始往下找,找最近3天之内存取过的文件。findusr-atime3-print# 会从/usr目录开始往下找,找最近5天之内修改过的文件。print# 会从doc目录开始往下找,找jacky的、文件名开头是j的文件。finddoc-userjacky-name,j*,-print# 会从doc目录开始往下找,找寻文件
10、名是ja开头或者ma开头的文件。finddoc(-nameja*-o-name,ma*)-print# 会从doc目录开始往下找,找到凡是文件名结尾为bak的文件,把它删除掉。-exec选项是执行的意思,rm是删除命令,)表示文件名,“;”是规定的命令结尾。finddoc-name,*bak-execrm;网络相关查看什么进程使用了该端口Isof-i:port获取本机ip地址sbinifconfig-agrepinetgrep-v127.0.0.1grep-vinet6awk,print$2*tr-d,addr:iptables#查看iptables状态#要封停一个ip#要解封一个IP,使用下
11、面这条命令:#开启9090端口的访问#防火墙开启、关闭、重启etcinit.diptablesrestartnc命令,tcp调试利器#给某一个endpoint发送TCP请求,就将data的内容发送到对端#nc可以当做服务器,监听某个端口号,把某一次请求的内容存储到received_data里# 上边只监听一次,如果多次可以加上-k参数nc-Ik8000tcpdump# dump出本机12301端口的tcp包tcpdump-iemltcpport12301-s1500-vabc.pcap跟踪网络路由路径# traceroute默认使用UdP方式,如果是-工则改成icmp方式# 从ttl第3跳跟踪
12、#加上端口跟踪traceroute-p8080192.168.10.11# 显示本地打开的所有端口# 显示每个进程具体打开的socket# 显示所有tcpsocket# 显示所有的UDPSocekt# 显示所有已建立的SMTP连接0stateestablished(dport=:smtporsport=:smtp)# 显示所有已建立的HTTP连接ablished,(dport=:httporsport=:http)X川又一恭tJ世不王tmp.Xll-unix*解释:netstat是遍历/proc下面每个PID目录,ss直接读procnet下面的统计信息。所以ss执行的时候消耗资源以及消耗的时间
13、都比netstat少很多netstat# 输出每个ip的连接数,以及总的各个状态的连接数-nIawk,tcpn=split($(NF-l)jarray/:1);if(n=2)+Sarray(l)jelse+Sarray(4);+s$NF;+NENDfor(ainS)printf(,%-20s%snja,Sa)j+Iprintf(%-20s%sn,TOTAL_IP,I);for(ains)printf(,%-20s%sn”,a,sa)jprintf(,%-20s%sn,TOTAL-LINK,N)j),#统计所有连接状态,# #CLOSED:无连接是活动的或正在进行# 1.ISTEN:服务器在等待
14、进入呼叫# SYN_RECV:一个连接请求已经到达,等待确认# SYN_SENT:应用已经开始,打开一个连接# ESTABLISHED:正常数据传输状态# FIN_WAIT1:应用说它已经完成# FIN_WAIT2:另一边已同意释放# ITMED_WAIT:等待所有分组死掉# CLOSING:两边同时尝试关闭# TIME.WAIT:主动关闭连接一端还没有等到另一端反馈期间的状态# 1.AST_ACK:等待所有分组死掉awk,tcp+state$NFENDfor(keyinstate)printkey,t,statekey,# 查找较多time_wait连接netstat-nIgrepTIMEJaIA工TlaWkprint$5,sortuniq-cIsort-rnhead-n20监控IinUX性能命令top按大写的F或。键,然后按a-z可以将进程按照相应的列进行排序,然后回车。而大写的R键可以将当前的排序倒转