参考:https://fredal.xin/java-error-check排查cpu问题1.使用top命令查看进程top2.使用top命令查看线程top -H -p pid,这里-H表示详细展示线程信息3
nohup与&其实都可以让一个任务在后台运行,区别在于nohup方式可以让子任务忽略sig
安装:http://www.s
https://www.binaryti
find -mtime -atime -ctime考虑一个场景,如果想要定期删除服务产生的日志,比如自动打包3
netstat -tulpt:tcpu:udpl:listenp:pidps -ef
1.命令模式下1.1 删除一行:dd1.2 移动到最后一行:G2.末行模式下2.1 查找:/xxx 翻页是n2.2 全局替换:%s/old/new/g2.3 退出保存:wq2.4 退出不保存:q!...
主要就是du和df两个。du即disk usage,查看使用情况;df即disk free,查看剩余情况; 1.先看du使用:du 文件名:查看某一文件的大小;miracle@localhost:~/test|⇒ du a.txt8 a.txtmiracle@localhost:~/test|⇒ du -k a.txt4 a.txtmiracle@localhost:~/
cp即copy,有以下三种用法:格式为:cp [参数] A B1.如果A为目录,则必须加上-r参数,表示递归把A目录下的所有目录文件递归地拷贝到B目录下。该种用法依赖于B目录是否存在。如果B目录没有,则新创建B并将A目录下的文件复制到B目录下,如果B目录有,则把A目录复制到B目录下,即被拷贝的A目录编程了B的子目录。 2.如果A和B都是单个文件,那么就是把A文件内容复制为B,如果B已经存
ssh是一个远程登录的工具,提供加密服务。1.安装,只需要sudo apt-get install openssh-se
完cmd命令,那么可...
mv命令要始终记得有两层含义,一是移动,二是重命名,一旦target即第二个参数不存在时,就会被当做重命名来处理。 用的时候,如果是想移动,那么第二个参数必须是目录,如果目录不存在就当做重命名处理了,所以最好是在结尾加一个“/”,这样就肯定会被当做目录处理,就不会重命名了。移动可以是文件也可以是目录,也可以是多文件。 如果是想重命名,那么第一个参数只能有一个。重命名文件,则第二
d . ! -name "*.
sort可以对文件内容进行排序,可以指定多个文件,默认按照字典序排序。如果要按照数字排序,可以使用-n参数。如果文件有多列,列是以空格区分的,那么可以指定按照特定的列排序,使用-k参数,1表示第一列。使用-r参数可以逆序排序。uniq只能接受一个排序文件为输入,所以sort管道uniq是一个常见用法。uniq只会显示不重复的行,意味着如果本来就不重复,会显示,本来重复,只显示一次。uniq -u则
的字符,我们可以使
ce/'这里pattern是要查找的模式,可以是正则表达
今天发现一个好用的地方,grep 可以显示匹配行的上下文。-A num,显示之后num行;-B
不知道谁写的代码,记日志加了“[]”和多个"!"号,导致grep不到日志。。。这两个符号都是有特殊
1.Shell的类型:Shell是脚本语言,常见的有bash,sh,csh与ksh。bash是最常见的,是linux系统默认的shell。脚本语言相当于每一次执行都要编译,然后再运行,效率低但是功能强大,需要较少的代码就可以实现较复杂的功能。全部变量2.变量:定义变量不需要申明,直接赋值即可。需要注意的是赋值号左右两边不能有空格。必须紧挨着,比如“a=10”。在使用变量时必须加美刀符,
sed全名是stream editor,文本的流式处理器。所谓的流式是与交互式相对的,交互式处理器比如vim。用法:1)行内替换;使用
cat命令的本来含义是拼接。cat可以用于拼接多个文件的内容:cat f1 f2 f3使用-n参数可以显示行号,但是不改变文件内容。cat还可以接受stdin为输入:cmd | cat使用cat还可以将stdin的内容和文件的内容拼接起来:cmd | cat - f1 f2这里的“-”代表标准输入cat另一个常见用法是重定向并追加:c
${var}:或者变量值,也可以不加{},但是在特别情况下,我们需要指定变量名的范围,就需要加{}。比如或者数组长度${#arr[*]},如果不加,那么$#也是一个变量,代表传给脚本的参数数目。$(cmd):获取命令的执行结果$(()):整数计算,与let命令作用一样。
>表示覆盖>>表示追加二者默认是把标准输出作为源,也就是>等价于1> >>等价于1>>。如果想要把错误输出重定向,那么需要2>或者2>>如果想要把错误和标准定义到不同文件:cmd 1>std.txt 2>err.txt如果想要把错误定义到标准输出:cmd 2>&1这里的&是为了让shell把1解释为标准输出而不是一个名字为1的文件。如
首先shell中只有字符串这一种类型,没有整形或者浮点型。但是在定义变量时,可以采用单引号,双引号和不加引号。不加引号,如果变
定义:有两种方法:1.采用()a=(10 20 30)2.采用下标:a[2]=1获取全部元素:echo ${a[*]}获取长度:echo ${#a[*]}遍历:1.类似于for each:for i in ${a[*]};do echo $idone2.采用c语言for循环语法,下标方式:for ((i=0; i
发现一个好办法,使用shell中string替换操作即可。这是shell的特定方法,因为shell定义数组是以空格来分割元素的,所以,我们只需要把
语法老是有几点忘记,但是正则又很重要,花时间记一下。首先看一下通用的正则表达式规范,大概如下:1.位置相关这里的位置指的是从哪里开始匹配正则表达式
直接用数组即可。a.txt文件:Tom baidu 8000Jerry alibaba 9000Jack tencent 8500Nika baidu 75001.分排序awk '{count[$2] += $3}END{for(i in count) print i, count[i]}' a.txt | sort -nrk 2baidu 15500a...
用户态 vs 内核态:操作系统也是程序,有对应的程序代码,而且也要占用内存。计算机的部分内存以及部分函数就是专门分
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号