linux常用命令

linux常用命令

       总结一下,仅供个人使用,遇到的不断持续更新
********************************linux常用命令*****************************************
top -n 1 | awk '{print $5}' |sed -n 3p | sed 's/%//g' |sed 's/id,//g'

top  进程监测命令  -n  后面加的是几就刷新几次
awk  是输出第几列      如果就一行的话 那就是 这行的第几个数值
sed  -n   3p 的意思是  top 命令输出的 第三行
sed 's/%//g'      里面那个 百分号  指的就是 需要剔除的字符串 

**************************************************************************************
find / -name muttr  查找命令 根据文件名称查找文件

**************************************************************************************
grep "Name:" /proc/9905/status   根据进程id获取进程名称

**************************************************************************************
#判断某文件是否存在
myFile="/var /log/httpd/access.log"   
if [ ! -f "$myFile" ]; then
 touch "$myFile"
fi

**************************************************************************************
iconv -f iso-8859-1 -t UTF-8 ./newreport.txt -o ./newreport.txt    文件编码格式转换

**************************************************************************************
-eq 等于
-ne 不等于
-gt 大于
-ge 大于等于
-lt 小于

**************************************************************************************
#!/bin/bash
top1=`top -n 1 | awk '{print $5}' | sed -n 3p | sed 's/%//g' |sed 's/id,//g'`
sleep 3
top2=`top -n 1 | awk '{print $5}' | sed -n 3p | sed 's/%//g' |sed 's/id,//g'`
sleep 3
top3=`top -n 1 | awk '{print $5}' | sed -n 3p | sed 's/%//g' |sed 's/id,//g'`

#比较写法
a= ` `echo $top1 | awk -v bi=20 '{print($1>bi)?"1":"0"}'`   `
b= ` `echo $top2 | awk -v bi=20 '{print($1>bi)?"1":"0"}'`   `
c= ` `echo $top3 | awk -v bi=20 '{print($1>bi)?"1":"0"}'`   `

#a=${top1:0:2} 取top1的值的前两位

echo  $a 
echo  $b
echo  $c
#if判断语句写法
 if [ " $a"  =  " 1"  ]&&  [ " $b"  =  " 1"   ]  && [ " $c"  =  " 1" ]  ; then

  echo CPU占用率正常!>> ./newreport.txt

else
echo   "不正常"
fi

rm -rf top 强制删除命令,整个目录

**************************************************************************************
#循环遍历数组
A=($df1 $df2 $df3 $df4 $df5)

for ((i=0; i<${#A[@]};i=i+1));
do

  if [ ${A[$i]} -gt  90 ] ; then

    echo "磁盘占用率过高!,请及时处理!"

else

    echo "磁盘占用率正常!"
fi
done

**************************************************************************************
#求一个组数里面最大值
#!bin/bash
A=(0.03 0.05 0.08 0.02)

 max=${A[0]};

 for ((i=0; i<${#A[@]};i=i+1));

 do
        if [ ${A[$i]} > $max ]
    then
         max=${A[$i]}
    fi
done
echo "最大值:$max"

**************************************************************************************
#scp的操作 不想输入密码就建立互信
#(1)同一服务器下不同用户之间文件拷贝 要求必须是root用户
scp ./main.sh sysAss@127.0.0.1:/home/sysAss/main.sh
#(2)通过本地向远程服务器上传文件(先登录15,再向24传递文件)
scp ./openssl-1.0.2j.tar.gz omg@192.188.188.88:/home/omg
#(3)通过远程服务器向本地传送文件(先登录24,再从15拷贝文件)
 scp omg@192.188.188.88:/home/omg/openssh-7.5p1.tar.gz ./
 
**************************************************************************************
#定时执行某一程序
#!/bin/bash
#admin:spirits
while rp=1
do
is=`ps -ef | grep /home/gess/service/lib/faultDeal.jar | grep -v grep |  awk '{print $2}' | sed -n 1p | sed 's/%//g' | sed 's/n//g' | wc -l`

if [ $is -eq 1 ]
then 
	id=`ps -ef | grep /home/gess/service/lib/faultDeal.jar |  awk '{print $2}' | sed -n 1p | sed 's/%//g' | sed 's/n//g'`
kill -9 $id
	java -jar /home/gess/service/lib/faultDeal.jar &
else
	java -jar /home/gess/service/lib/faultDeal.jar &
fi
	rm nohup.out
sleep 360
done
********************************************************************
#开启一个进程服务
nohup sh allmain.sh &
nohup sh check.sh >> myout.out &
********************************************************************
#sqlplus连接远程数据库
sqlplus std_edg/std_edg2015@188.88.10.10:7654/gzzc 
# 用户名、密码、ip、数据库名称
********************************************************************
#从服务器上下载文件到本地、从本地上传文件到服务器
     sz                              rz
********************************************************************

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值