zoukankan      html  css  js  c++  java
  • linux 常用命令

    日志的查找方式

    windows查看端口和删除进程

    netstat -aon | findstr 8081  taskkill /pid 4632 /F

    查看端口

    lsof -i:443

    netstat -anput | grep 443

    ll /proc/pid

    看程序一些细节

    场景1: 日志实时监控 tail
    -f fdata.log 场景2:查询最后20行,并且查找关键字 结果 tail -n 20 fdata.log | grep '结果' 场景3:查询最后20行,并且查找关键字 结果(文字标红) tail -n 20 fdata.log | grep '结果' --color 场景4:查询最后20行,并且查找关键字 结果(文字标红),上下扩展2行 tail -n 20 fdata.log | grep '结果' --color -a2

    tail  -n  10  test.log   查询日志尾部最后10行的日志;
    
    tail -n +10 test.log    查询10行之后的所有日志;
    
    head -n 10  test.log   查询日志文件中的头10行日志;
    
    head -n -10  test.log   查询日志文件除了最后10行的其他所有日志;
    
     
    
    场景1: 按行号查看---过滤出关键字附近的日志
    
    因为通常时候我们用grep拿到的日志很少,我们需要查看附近的日志.
    
    我是这样做的,首先: cat -n test.log |grep "地形"  得到关键日志的行号
    
     
    
    <3>得到"地形"关键字所在的行号是102行. 此时如果我想查看这个关键字前10行和后10行的日志:
    
    cat -n test.log |tail -n +92|head -n 20
    
    tail -n +92表示查询92行之后的日志
    
    head -n 20 则表示在前面的查询结果里再查前20条记录
    
     
    
    场景2:那么按日期怎么查呢?  通常我们非常需要查找指定时间端的日志
    
    sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p'  test.log
    
    特别说明:上面的两个日期必须是日志中打印出来的日志,否则无效.
    
     
    
    关于日期打印,可以先 grep '2014-12-17 16:17:20' test.log 来确定日志中是否有该时间点,以确保第4步可以拿到日志
    
    这个根据时间段查询日志是非常有用的命令.
    
    6
    
    如果我们查找的日志很多,打印在屏幕上不方便查看, 有两个方法:
    
    (1)使用more和less命令, 如: cat -n test.log |grep "地形" |more     这样就分页打印了,通过点击空格键翻页
    
    (2)使用 >xxx.txt 将其保存到文件中,到时可以拉下这个文件分析.如:
    
    cat -n test.log |grep "地形"  >xxx.txt
    
    这几个日志查看方法应该可以满足日常需求了.

    tailf /data/www/logs/rpc-member-benefits-service-inst0/supervisor.log|grep "CouponConsumeWorker"

    打印前后2行

    tailf  /data/www/apps/mic-member-promotion-service/inst0/logs/supervisor.log|grep -C 2 '推送限时抽奖任务的'
     
    执行操作命令 sudo su
    
    rz -bye  上传文件
    
    sz 下载文件
    
    ps -ef | grep ubi-cron-1.0.jar  查看相关进程
    
    ctrl + c  退出
    
    kill -9 pid 等于kill -s 9 pid,表示强制,尽快终止一个进程。多半admin会用这个命令。
    
    cat <文件名> | grep <关键字> 
    
    文件和目录 
    cd /home 进入 '/ home' 目录' 
    cd .. 返回上一级目录 
    cd ../.. 返回上两级目录 
    cd 进入个人的主目录 
    
    mkdir dir1 创建一个叫做 'dir1' 的目录' 
    mkdir dir1 dir2 同时创建两个目录 
    mkdir -p /tmp/dir1/dir2 创建一个目录树 
    rm -f file1 删除一个叫做 'file1' 的文件' 
    rmdir dir1 删除一个叫做 'dir1' 的目录' 
    rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容 
    rm -rf dir1 dir2 同时删除两个目录及它们的内容 
    
     
    
    cp -a dir1 dir2 复制一个目录 将一个文件夹复制并重命名
    
    cp dir/* . 复制一个目录下的所有文件到当前工作目录 
    
    ls 查看目录中的文件 
    ls -F 查看目录中的文件 
    ls -l 显示文件和目录的详细资料 
    ls -a 显示隐藏文件 
    
    1、vi 文件名.txt;
    
    2、touch 文件名.txt
    
    看版本
    python --version
    
    看安装路径
    which python
    
    netstat -apn|grep <端口号>

    在linux执行http请求

    curl http://10.1.8.153:20892/test/day

    curl -s "http://10.1.8.153:20892/test/day?u=1&a=2"

     Linux中zip压缩和unzip解压缩命令详解

    1、把/home目录下面的mydata目录压缩为mydata.zip
    zip -r mydata.zip mydata #压缩mydata目录
    2、把/home目录下面的mydata.zip解压到mydatabak目录里面
    unzip mydata.zip -d mydatabak
    3、把/home目录下面的abc文件夹和123.txt压缩成为abc123.zip
    zip -r abc123.zip abc 123.txt
    4、把/home目录下面的wwwroot.zip直接解压到/home目录里面
    unzip wwwroot.zip
    5、把/home目录下面的abc12.zip、abc23.zip、abc34.zip同时解压到/home目录里面
    unzip abc*.zip
    6、查看把/home目录下面的wwwroot.zip里面的内容
    unzip -v wwwroot.zip
    7、验证/home目录下面的wwwroot.zip是否完整
    unzip -t wwwroot.zip
    8、把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录
    unzip -j wwwroot.zip
    
    主要参数
    
    -c:将解压缩的结果
    -l:显示压缩文件内所包含的文件
    -p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
    -t:检查压缩文件是否正确
    -u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
    -v:执行是时显示详细的信息
    -z:仅显示压缩文件的备注文字
    -a:对文本文件进行必要的字符转换
    -b:不要对文本文件进行字符转换
    -C:压缩文件中的文件名称区分大小写
    -j:不处理压缩文件中原有的目录路径
    -L:将压缩文件中的全部文件名改为小写
    -M:将输出结果送到more程序处理
    -n:解压缩时不要覆盖原有的文件
    -o:不必先询问用户,unzip执行后覆盖原有文件
    -P:使用zip的密码选项
    -q:执行时不显示任何信息
    -s:将文件名中的空白字符转换为底线字符
    -V:保留VMS的文件版本信息
    -X:解压缩时同时回存文件原来的UID/GID

    1. 使用tar压缩文件

    tar -zcvf test.tar.gz ./test/

    该命令表示压缩当前文件夹下的文件夹test,压缩后缀名为test.tar.gz

    如果不需要压缩成gz,只需要后缀为tar格式的,那么输入如下命令:

    tar -cvf test.tar ./test/

    2. 使用tar解压文件

    tar -xzvf test.tar.gz  

    该命令表示把后缀为.tar.gz的文件解压到当前文件夹下。

    如果压缩文件的后缀是.tar,没有gz,则使用命令:

    tar -xvf test.tar

    解压jdk到指定文件夹:

    tar -xzvf jdk-8u131-linux-x64.tar.gz -C /usr/local/java

     supervisor查看命令

     supervisor

    supervisord -c /etc/supervisor/supervisord.conf 启动命令

    supervisorctl reload 重新加载配置文件

     jvm

    top –p pid
    
    功能:可以显示当前系统正在执行的进程的相关信息,包括进程ID、
    内存占用率、CPU占用率等。

    查询进程<pid>的垃圾收集情况,每250毫秒查询一次,一共查询20次: jstat -gc pid 250 20

    输出上次GC原因:jstat –gccause pid

      查看堆内存(histogram)中的对象数量及大小:jmap –histo pid

    
    将内存使用的详细情况输出到文件:jmap -dump:format=b,file=/tmp/x.hprof pid 
    
    
    root赋值sam权限
    
    chown -R sam:sam /data/elasticseach
  • 相关阅读:
    Android studio 使用flutter插件 运行第一个flutter项目 报错 Warning: License for package Android SDK Build-Tools 28.0.3 not accepted.
    Android 使用GPS获取到经纬度后 无法在Android8.0上使用Geocoder类获取位置信息
    Android 利用 gson 将 json 转成 对象object 集合list
    Android 6.0 7.0 8.0 一个简单的app内更新版本-okgo app版本更新
    iview组件 eslint校验出错 Parsing error: x-invalid-end-tag
    新建 Vue项目 使用iView报错解决
    Typora 自定义主题 修改左右间距
    Vue 嵌套数组 数组更新视图不更新
    如何在手机设备上实时调试
    通过ReRes让chrome拥有路径映射的autoResponse功能。
  • 原文地址:https://www.cnblogs.com/tinya/p/8668127.html
Copyright © 2011-2022 走看看