linux基本命令练习

给一个ngx日志文件,统计出http相应速度最慢的前10个url:

awk '{print $i}' access.log | sort -nr -k 1 | head -10

其中print $i表示打印哪一行, -nr表示逆序,-k表示按指定行排,head -10表示前10行

查看进程:

ps aux|grep php

注意:ps是显示当前状态处于running的进程,grep表示在这些里搜索,而ps aux是显示所有进程和其状态。如果直接用ps命令,会显示所有进程的状态,通常结合grep命令查看某进程的状态。

grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

ps aux输出格式:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
比如上面命令输出为:

[minping@localhost ~]$ ps aux | grep php
minping  12362  0.0  0.0 112660   976 pts/1    S+   13:38   0:00 grep --color=auto php
[minping@localhost ~]$ 

查看最大文件打开数:在Linux下有时会遇到Socket/File : Can't open so many files的问题。其实Linux是有文件句柄限制的,而且Linux默认一般都是1024(阿里云主机默认是65535)。在生产环境中很容易到达这个值,因此这里就会成为系统的瓶颈。:

ulimit -a

返回结果为:

[minping@localhost ~]$ ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 7881
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 4096
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
[minping@localhost ~]$ 

其中的open files就是最大文件打开数

创建一个新的tar文件:

tar cvf minping.tar minping/

解压一个tar文件:

tar zvf minping.tar

解压一个tar.gz文件:

tar zxvf minping.tar.gz

从一个文件中查找字符( 其中-i表示胡列字符大小写的区别,如果不加-i就搜索不出来‘The’这种字符):

grep -i 'the' nubo.txt

从文件中查找符合的字符,输出此行及之后的三行:

gerp -A 3 -i 'the' nubo.txt

在一个文件夹中递归查询包含特定字符的文件:

gerp -r -i 'the' minping/

查找指定文件名的文件:

find -iname 'minping.txt'

对找到的某个文件执行某个操作:

find -iname 'minping.ext' -exec md5sum {} \

找出当前用户根目录下的空文件

find ~ -empty

ssh远程登录到主机:

ssh -l minping 10.74.95.145

ssh登录调试:

ssh -v -l jsmith remotehost.example.com

打印文件中的指定部分的字段:

awk '{print  $3,$5;}' employee.txt

打开文件并跳到第10行:

vim +10 employee.txt

打开文件跳到第一个匹配的行:

vim +/search_item employee.txt

以只读模式打开文件:

vim -R employee.txt

比较的时候忽略空白符:

diff -w list.txt   list_new.txt

以升序对文件内容排序:

sort list.txt

以升序对文件内容排序:

sort -r list.txt

以第三个字段对文本内容进行排序

sort -t: -k 3n list.txt | more

下载文件并以指定的文件名来保存:

wget -o myname.txt http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.1.tar.gz

创建软链接:

ln -s file1 file1soft

查看软链接:

[root@localhost minping]# ls -il
total 20
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491140 lrwxrwxrwx 1 root root 5 07-14 14:24 file1soft -> file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand

参考

你可能感兴趣的:(linux基本命令练习)