zoukankan      html  css  js  c++  java
  • 一些命令及参数

    du -sh:查看某文件大小

    sh -x 脚本名称:检测脚本错误

    vim +行数:定位到内容的错误行数

    dir 目录 查看目录

    factor 分解因数

    exit 直接结束循环体

    break 结束整个循环体(最近一个循环)跳出当前循环

    continue 结束当次循环,进入下一次循环

    reture(函数里用到)从哪调用函数回哪

     nl 读取文件内容并显示行号

    cat -n 查看并显示行号

    查看cpu相关信息:cat /proc/cpuinfo

    at /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l   #物理cpu个数

    cat /proc/cpuinfo | grep "processor" | wc -l  #逻辑cpu个数(所有物理cpu所有核数相加)

    查看内存 free

    buffers:buffer cache针对磁盘块读写的磁盘缓存大小

    cached:cached cache针对文件inode读写的磁盘缓存大小

    -buffers/cache:真正被用于程序占用的内存数(used-buffers-cached)

    +buffers/cache:可用的内存数(free+buffers+cache)

    查看硬盘使用情况

    分区信息 fdisk -l     文件系统  df

    df -m 以m方式显示 -k kb方式显示 -h 以kb/mb/gb显示  -i 以inode数量显示 -a 显示所有文件系统 -T显示文件系统类型 -H以1024=1000方式显示

    查看目录大小 du    -s显示总量  -S不包括子目录 -a显示所有 -c总计 -h -m -k

    查看硬盘的I/O性能  iostat

    iostat -x -k 1 3 #每秒一次共三次

    %util:一秒中I/O操作时间的百分比,即一秒内有多少时间I/O队列是非空的,若接近%100表示I/O请求过多,超负荷,磁盘存在瓶颈

    await:平均每次设备I/O操作的等待时间,一般应低于5ms,若大于5ms表示磁盘I/O压力大,应升级硬件或调优

    查看系统平均负载 uptime   w   top

    主要是load average 1分钟 5分钟 15 分钟的平均进程的数量 

    top可以查看进程优先级,cpu使用率,内存使用率

    top -b -n1 >/top.txt 导入一个文件中再查看 cat /top.txt

    VIRT #虚拟内存用量

    RES #物理内存用量

    SHR #共享内存用量

    %MEM #内存用量

    系统整体性状态    vmstat

    jstack

    jstack用于打印出给定的java进程ID或core file或远程调试服务的java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64"

    ,windows的jstack使用方式只支持一下的这种方式:

    jstack [-l] pid

    如果java程序崩溃生成core文件,jstack工具可以用来获取core文件的java stack和native stack的信息,从而可以轻松知道java程序是如何崩溃和在程序何处发生问题。另外,jstack工具还可以附属在正在运行的java程序中,看到当时运行的java程序的java stack和native stack的信息,如果现在运行的java程序呈现hung的状态,jstack是非常有用的

    格式

    jstack [option] pid

    jstack [option] executable core

    jstack [option] [server-id@]remote-hostname-or-IP

    参数说明

    option:executable java executable from which the core dump was produced(可能是产生core dump的java可执行程序)

    core将被打印信息的core dump文件

    remote-hostname-or-IP远程debug服务的主机名或ip

    server-id唯一id,假如一台主机上多个远程debug服务

    说明:

    -F:当‘jstack[-l]pid’没有相应的时候强制打印栈信息

    -l:长列表,打印关于锁的附加信息,例如属于java.util.concurrent的ownable synchronizers列表

    -m:打印java和native c/c++框架的所有栈信息

    -h | -help:打印帮助信息

    pid:需要被打印配置信息的java进程id,可以用jps查询

    dmesg

    dmesg命令被用于检查和控制内核的环形缓冲区。kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息保存在/var/log/dmesg文件里

    -c:显示信息后,清除ring buffer中的内容;

    -s<缓冲区大小>:预设置为8196,刚好等于ring buffer的大小;

    -n:设置记录信息的层级

    dmidecode命令可以让你在Linux系统下获取有关硬件方面的信息

    来自: http://man.linuxde.net/dmesg

     查询某命令来自光盘镜像源里的哪个软件包 yum provides */scp

    校准系统时间 date 12211604 格式读作 12月21日16点04分

    创建用户免交互输入密码方式:echo "密码" | passwd --stdin 用户名 & > /dev/null

    针对系统的一些参数查看方法

    查看linux系统有几颗物理cpu和每颗cpu的核数

    cat /proc/cpuinfo | grep -c "physical id" #查看几颗cpu    grep -c "processor" #查看逻辑cpu核数

    cat /proc/cpuinfo | grep "physical id " | sort | uniq | wc -l   #物理cpu个数

    cat /proc/cpuinfo | grep "cpu cores" | uniq  #每个cpu核数

    查看系统负载

    命令:w/uptime  #load average 就是系统负载 三数值表示 1min 5min 15min内系统的平均负载(平均任务数)

    vmstat显示分别表示什么意思

    r #正在跑的任务数

    b #被阻塞的任务数

    si #从交换分区读入内存

    so #从内存写入交换分区

    bi #从磁盘读入内存

    bo #从内存写入磁盘

     查看网卡流量/查看历史网卡流量

    安装sysstat 使用sar命令查看

    sar -n DEV #查看网卡流量,默认以10min更新一次

    sar -n DEV 1 10 #1s显示一次,一共显示10次

    sar -n DEV  -f /var/log/sa/sa22 #查看指定日期的流量日志

    系统进程

    ps aux /ps -elf

    ps查看系统进程,一列为STAT 当前进程的stat为Ss /Z表示:

    S #表示休眠 s #表示主进程 Z #表示僵尸进程

    查看端口

    netstat -lnp

    查看网络连接状态

    netstat -an

    hostname #查看主机名  hostname 主机名   #修改主机名     永久生效就需要修改配置 /etc/sysconfig/network

    设置DNS修改配置文件:/etc/resolv.conf 中设置  或者 /etc/sysconfig/network-scripts/网卡名  里设置

    iptables 一条规则拒绝ip 访问本机80端口:

    iptables -I INPUT -s ip地址 -p tcp --dport 80 -j REJECT

    iptables 规则导出保存一个文件中/恢复:

    使用iptables-save重定向到文件中:iptables-save > 1.ipt

    使用iptables-restore反重定向回来:iptables-restore < 1.ipt

     检查网卡是否连接交换机:mii-tool 网卡名       /mii-tool 网卡名

    网卡/硬盘有问题使用命令dmesg

    关闭不需要的服务命令ntsysv/chkconfig servicename off

    一个脚本运行超过2天,要使其不间断运行且有 信息输出 使用screen工具

    抓包只过滤访问http服务的+ip,共1000个包且保存到一个文件中 tcpdump -nn -s0 host ip地址 and port 80    -c 1000 -w 文件名

    rsync做同步数据时,可以过滤一些不需要的文件  --exclude=  "文件名"

    rsync同步时,目标 文件比源文件还新,要忽略 使用-u或者--update

    要访问 某个网站没有做网站域名解析  在/etc/hosts 文件中            做映射   格式为:ip  域名  或者使用curl -x

    查看系统的历史负载    sar -q -f       /var/log/sa/sa日期

    指定DNS服务器来解析某个域名    使用dig命令 :dig @DNSip 域名

    rsync同步数据,使用ssh方式 指定目标sshd端口 :rsync "--rsh=ssh -p 端口"或者rsync -e "ssh -p 端口"

    ls | grep -Ev 'home' | xargs du -sh #统计除家目录外的其他目录文件大小
    du -sh* #统计当前目录内的文件大小
    df -vh #查看磁盘使用情况

    dmesg -H #存放硬件故障信息,“Kernel Ring Buffer ”(内核环状缓冲区)

    文件系统:指定调整的文件系统或者其对应的设备文件名

    e2label  位置/sbin/e2label  用来设置第二扩展文件系统的卷标

    tune2fs 位置/sbin/tune2fs   tune2fs命令允许系统管理员调整“ext2/ext3”文件系统中的可该参数

    磁盘的uuid位置及查看它们之间的关系

    ls -l /dev/disk/by-uuid/

     nohup命令 用户退出系统进程继续工作

    nohup命令可以将程序以忽略挂起信号的方式运行起来,被运行程序的输出信息将不会显示到终端。

    无论是否将nohup命令的输出重定向到终端,输出都将写入到当前目录的nohup.out文件中。如果当前目录的nohup.out文件不可写,则输出重定向到$HOME/nohup.out文件中

    strace跟踪进程的系统调用

     strace -tt -f -o /tmp/test.txt /usr/local/nginx/sbin/nginx     -tt 加上时间信息 -f 跟踪目标进程及目标的进程产生的子进程 -o将跟踪到的信息输出到目标文件中

    -e trace=file 只跟踪与文件操作有关的系统调用

    -c 为进程所有的系统调用做一个统计分析

    -T 将每个系统调用所花费的时间打印出来

    ltrace 跟踪进程调用库函数

    echo -e 处理特殊字符

    echo- n 不换行输出

  • 相关阅读:
    前端三剑客:html,css,JavaScript
    Python的开发之路
    python-win32操作excel的一些特殊功能
    pillow处理图片横向与纵向的合并
    部署django+uwsgi+Virtualenv+nginx+supervisor详细步骤
    python实现下载文件路径自动添加(1)的递增路径
    cx_Oracle连接oracle数据库
    pillow模块常用方法
    python内建集合模块collections功能,计数,有序,双向队列
    paramiko批量上传下载sftp,解决访问windows系列sftp乱码问题
  • 原文地址:https://www.cnblogs.com/luozhongyuan/p/7227414.html
Copyright © 2011-2022 走看看