您的位置:首页 > 运维架构 > Linux

Linux操作命令总结(四)

2017-07-26 00:49 127 查看
wc -l test.txt  统计 test.txt中的行数

nl  未指定文件,则从标准输入中读取数据,添加行号后输出

nl test.txt  给文件各行添加行号后输出

nl -nln test.txt  各行添加行号后,左对齐输出

nl -nrn test.txt  各行添加行号后,右对齐输出

nl -nrz test.txt   各行添加行号后,右对齐输出,空格用0填充

sed命令一次处理一行数据,当前行数据处理完毕之后,继续处理文件中的下一行数据,直到文件末尾。可以对数据做增、删、改等操作。处理每行数据时,将当前行的数据放到临时缓冲区中,然后对临时缓冲区中的数据进行处理并输出。所做的操作是针对临时缓冲区中的数据,对于原始文件没有影响。

sed '3a gh' test.txt  在test.txt中第3行的下一行添加'gh'


 
  

sed '3i gh' test.txt  在test.txt中第3行的上一行添加一行数据'gh'

sed '2d' test.txt  删除test.txt中第2行



sed '1,3c hello' test.txt   在test.txt中将第1行至第3行,用‘hello’替换

sed -n  '1,2p' test.txt  将指定文件的第1行至第2行输出

sed -n  '1,$p' test.txt  将指定文件的第1行至最后一行输出



wget 命令支持断点下载,同时支持FTP和HTTP下载方式。若由于网络的原因下载失败,wget会不断的尝试,直到文件下载完毕。对从那些限定了链接时间的服务器上下载大文件非常有用。在下载的过程中会显示进度条,包含(下载完成百分比,已经下载的字节,当前下载速度,剩余下载时间)。

wget -O abc.zip 资源URL   下载指定URL的资源,并在当前目录下保存为abc.zip

wget -c 资源URL   继续下载因网络或其它原因导致下载中断的文件。

wget --spider 资源URL   测试下载链接是否有效

wget -i test.txt   从指定文件test.txt获取下载资源的url。test.txt中每行为一个待下载资源的URL

awk是一个文本分析工具,在对数据分析并生成报告时很强大。awk把文件逐行的读入,将记录按指定的域分隔符切分,默认分隔符为空格,将每行切片,再进行各种分析处理。$0则表示所有域,$1表示第一个域,$n表示第n个域。

cat test.txt |awk  -F ':'  '{print $3}'   将test.txt中每行按照:进行切分,输出第三个域



jps 显示系统上当前用户的Java进程

ps -aux|grep java 显示系统上所有用户的Java进程

ps   -a
: 显示现行终端机下的所有进程,包括其他用户的进程;

        -u :以用户为主的进程状态,启动这个进程的用户和它启动的时间;

        -x :通常与 a 这个参数一起使用,可列出较完整信息。

ps是显示瞬间进程的状态,并不会实时刷新;若要对进程状态进行实时监控应该用top命令。top命令用来监控linux系统状况,如cpu、内存的使用情况。



free  查看内存的使用情况



ssh
abc@192.168.1.5 -p port 以用户名abc登录到指定ip的机器。port为端口号,默认情况是22。

ln命令用来为文件创建链接,分为硬链接和软链接两种,默认的连接类型是硬链接。如果要创建软链接必须使用"-s"选项。建立硬链接时,链接文件和被链接文件必须位于同一个文件系统中,并且不能指向目录。而对软链接,则不存在这个问题。软链接可以是任何一个文件名,也可以是一个目录,并且允许它与“目标”不在同一个文件系统中。

软链接会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间。硬链接会在你选定的位置上生成一个和源文件大小相同的文件。无论是软链接还是硬链接,文件都保持同步变化。可使用ls
-l命令查看link的路径。



新安装的linux系统,可能没有网络,网络的设置可以参考下图,修改对应的ifcfg-eth0中IP地址、子网掩码、网关。修改完成之后,重新启动网络service
network restart。ifcfg-eth0是默认的第一个网络接口,如果机器中有多网络接口,那么名字就将依此类推ifcfg-eth1,ifcfg-eth2,ifcfg-eth3...



ifconfig eth0  192.168.1.5     给设备eth0设置临时IP地址,不需要重启网络,立刻生效。但是当系统重启之后,这个临时设置的ip后失效。

mkdir -p
d/e/f  创建包含子目录的目录时,使用参数-p可以在父目录不存在的情况下,自动去创建父目录。

Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。Telnet是常用的远程控制Web服务器的方法。但是,telnet因为采用明文传送报文,安全性不好,很多Linux服务器都不开放telnet服务,而改用更安全的ssh方式了。但仍然有很多别的系统可能采用了telnet方式来提供远程登录。

&  添加到命令的后面,可以使执行命令的进程在后台执行,不占用终端界面。若该终端界面被关闭,那么这个在后台执行命令的进程也会结束,这是因为该进程会受到sighup信号的影响,收到这个信号后结束进程。

nohup  可以使进程不受sighup信号的影响,但还是会占用终端界面。该命令会在执行命令时所在的目录生成nohup.out文件,用于存放进程执行过程中的输出。

nohup command  &    将nohup与&一起使用,这样就可以使执行命令的进程不占用终端界面,同时还不受sighup信号的影响。

setsid command  由进程组长打开一个新的会话在后台执行,执行该command指令的进程不再受原会话终端关闭状态的影响。setsid 在其是进程组长时会fork()一个进程,但它不会
wait()
 它的子进程,而是立刻退出,所以不会占用终端界面。而在
shell 脚本内,setsid 不是进程组长,它不会 
fork()
 子进程,而是由 bash 来
fork()
 一个子进程,而 bash 会
wait()
子进程,所以表现得像 setsid在 
wait()
 子进程一样。要解决这个问题,可以在command后天添加 
&
符号强行到后台执行。

jobs  查询正在运行的作业信息。

sz filename   从服务器上发送文件到本地机器。

rz  从本地机器上传文件到服务器端,在弹出框中选择需要上传的文件。

vim使用:/pattern     向后搜索字符串pattern

                 ?pattern     向前搜索字符串pattern

                 n     下一个匹配(如果是/搜索,则是向下的下一个,?搜索则是向上的下一个)

                 N     上一个匹配(同上)

                 %s/old/new/g     搜索整个文件,将所有的old替换为new

                 %s/old/new/gc     搜索整个文件,将所有的old替换为new,每次都要确认是否替换

                  n1,n2s/p1/p2/g     将第n1至n2行中所有p1均用p2替代 

                set nu   显示行号

                set nonu   不显示行号

hostname   显示主机名

hostname  abc   更改主机名,重启之后该新主机名将失效



若要永久修改主机名,需要修改/etc/hosts文件



netstat  -ano|grep
80 用来显示网络相关信息,并过滤包含80的行



uname  获取电脑和系统的相关信息



grep -w 'XXX'   -w查找完全匹配的行

                        -v查找不匹配的行



        

date 显示和设置系统的日期和时间



linux防火墙开启与关闭

a.永久生效,重启后不会复原:  

chkconfig  iptables  on  开启

chkconfig  iptables  off  关闭

b.即时生效,重启后复原

service iptables start   开启

service iptables stop   关闭
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: