Linux部分记录

查看占用端口

  1. netstat -ano|findstr “8080”
  2. netstat –tunlp|grep 端口号
  3. tasklist|findstr 号
  4. lsof -i:端口号

关闭进程

kill -9 PID号

查看进程

ps -ef|grep tomcat

查看log

tail -n 10 uwsgi.log

linux中最为常用的三大文本(awk,sed,grep)处理工具[find(文件)]

  1. find作用是在目录中搜索文件,它的使用权限是所有用户。
  2. grep
    grep 匹配条件 处理文件
    #查找以leo结尾的行
    grep leo$ logs.log
    #查找并输出到指定文件
    grep leo logs.log > result.log

#在/data/web目录下,递归所有扩展名为.jsp的文件,排除 .git,vendor,log 这三个目录,查找所有包含字符串’link_params’的文件及文件内容(不区分大小写),并展示相应行的上下5行内容,以及行号
grep -rni -C5 ‘link_params’ --include ‘*.jsp’ --exclude-dir={.git,vendor,log} /data/web

  1. cat
    cat -b 文件 | grep 关键字 ##默认显示mail所在行
  2. sed 匹配条件及模式 处理文件
    sed -n '/#/p' fstab ##显示#所在行
    sed -n '/#/!p' fstab ##显示不带#的行
    sed '/^UUID/d' fstab ##删除UUID所在行
    sed '/^UUID/!d' fstab ##出UUID行,其他都删除

find和grep的区别

  • find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。
  • grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。

创建目录

mkdir -p 1/2/3
-p 选项递归创建所有目录

创建文件(目录已存在)

  • touch test1/test2/myNewTest.py
    同时创建两个文件
    touch test1.txt test2.txt
    批量创建文件(如创建2000个文件)
    touch test{0001..2000}.txt
  • cd new111
  • >1.text
  • copy null>a.txt
  • vim 文件名。。。esc :wq 保存
  • vi
  • echo ‘11111’>a.txt

删除文件/目录 rm(可多级删除)

-r 就是向下递归,不管有多少级目录,一并删除
-f 就是直接强行删除,不作任何提示的意思

rm -rf test1/test2/myNewTest.py

查看日志文件内容命令tail和head、sed、cat、tac、less

  • head -n 1000:显示前面1000行

  • tail -n 1000:显示最后1000行

  • cat

    tail -n 1000:显示最后1000行
    tail -n +1000:从1000行开始显示,显示1000行以后的
    head -n 1000:显示前面1000行

    下面的逻辑是通过多个管道实现,多次对上面的处理结果继续进行处理
    从第3000行开始,显示1000行。即显示3000~3999行
    cat filename | tail -n +3000 | head -n 1000
    显示1000行到3000行
    cat filename| head -n 3000 | tail -n +1000

    把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里
    cat -n textfile1 > textfile2

    把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3 里。
    cat -b textfile1 textfile2 >> textfile3

    cat查看并搜索:

    • cat filename | grep -C 5 ‘关键字’ (显示日志里匹配字串那行以及前后5行)
    • cat filename | grep -B 5 ‘关键字’ (显示匹配字串及前5行)
    • cat filename | grep -A 5 ‘关键字’ (显示匹配字串及后5行)
    • cat impression.log | tail -n 10| grep 1679554844363(从后10行中筛选包含x的部分)

    vim搜索

    • 进入vim编辑模式:vim filename
    • 输入“/关键字”,按enter键查找
  • tac 是将 cat 反写过来,所以他的功能就跟 cat 相反, cat 是由第一行到最后一行连续显示在萤幕上,
    而 tac 则是由最后一行到第一行反向在萤幕上显示出来!

  • sed -n ‘5,10p’ mylog这样你就可以只查看文件的第5行到第10行。

  • less logname.log
    less查看时搜索
    shift + G 命令到文件尾部 然后输入 ?加上你要搜索的关键字例如 ?1213
    按 n 向上查找关键字
    shift+n 反向查找关键字
    less与more类似,使用less可以随意浏览文件,而more仅能向前移动,不能向后移动,而且 less 在查看之前不会加载整个文件。

    j 下一行
    k 上一行
    f 向下滚动一屏幕
    b 向上滚动一屏幕
    g 定位到文档头部
    G 定位到文档最尾部

清空日志文件

> filename

文件权限设定

eg: 将start.sh文件改为可执行权限
chmod u + x filename.sh

chmod的语法格式如下:chmod [who] [opt] [mode] 文件/目录名

其中who表示对象,是以下字母中的一个或组合:
u:表示文件所有者
g:表示同组用户
o:表示其它用户
a:表示所有用户

opt则是代表操作,可以为:
+:添加某个权限
-:取消某个权限
=:赋予给定的权限,并取消原有的权限

而mode则代表权限:
r:可读 4
w:可写 2
x:可执行 1

查找所有名称中包含test的进程并全部杀死;

ps -ef|grep test|grep -v grep|awk '{print $2}'|xargs -r kill -9

其中:

  1. | 管道符,用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入
  2. ps 命令用来列出系统中当前运行的进程,ps -ef 显示所有进程信息,连同命令行
  3. grep 命令用来过滤/搜索特定字符,grep test在这里为搜索过滤所有含有test名称的进程
  4. grep -v grep 显示不包含匹配文本的所有行,在这里为筛选出所有不包含grep名称的进程,对上一步的进程再做一次筛选(ps -ef列出了所有的进程,包括命令行)
  5. awk 在文件或字符串中基于指定规则浏览和抽取信息,把文件逐行读入,以空格为默认分隔符将每行切片,然后进行后续处理。这里利用awk ‘{print $2}’ 将上一步中过滤得到的进程进行打印,$2表示打印第二个域(PID, 进程号) $0 表示所有域, 1 表示第一个域, 1表示第一个域, 1表示第一个域,n表示第n个域
  6. xargs 命令是给命令传递参数的过滤器,善于把标准数据转换成命令行参数。在这里则是获取前一个命令的输出,把它转换成命令行参数传递给后面的kill命令。-r选项表示如果输入为空,则不执行后面的命令
  7. kill -9 强制关闭进程

替换文件中的内容

sed -i 's/被替换的内容/要替换成的内容/' file
要替换某文件的内容切先复制再替换,以免替换出错

sed 's/被替换的内容/要替换成的内容/g' file > file.out
mv file.out file

在Linux操作系统中,我们可以借助'grep -rl'命令来实现对一些文件的过滤,比如说过滤含有某些特殊字符串的文件

批量查找并替换当前文件夹下的文件内容

sed -i “s/要找查找的文本/替换后的文本/g” `grep -rl “要找查找的文本” ./`
批量查找并替换任意文件夹下的文件内容

sed -i “s/要找查找的文本/替换后的文本/g” `grep -rl “要找查找的文本” /任意文件夹`

注意这里的 " & " 符号,如果没有 “&”,就会直接将匹配到的字符串替换掉
sed ‘s/^/添加的头部&/g’      #在所有行首添加
sed ‘s/KaTeX parse error: Expected 'EOF', got '&' at position 2: /&̲添加的尾部/g'      #…s/原字符串/替换字符串/g’ #替换最后一行
sed ‘2,5s/原字符串/替换字符串/g’ #替换2到5行
sed ‘2,$s/原字符串/替换字符串/g’ #替换2到最后一行

软连接

ln -s 源文件[目录] 目标文件[目录]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值