美文网首页常用的命令
目前最常使用的shell命令及部分脚本总结

目前最常使用的shell命令及部分脚本总结

作者: 李菜菜同学 | 来源:发表于2020-01-13 18:37 被阅读0次

    一、常用shell命令

    1.查看进程:

    ps -aux | grep 进程名

    2.重启Tomcat:

    service tomcat restart

    3.进入目录:

    cd wenjianjia

    4.强制删除压缩包:

    rm -rf  压缩包名

    5.将war包压缩:

    tar  zcvf  war包名称.tgz  war包名称.

    例:tar zcvf learn.war.tgz  learn.war/

    6.将本地文件上传到服务端上的/home/apache/learn路径

    scp  learn.war.tgz  root@ip:/home/apache/learn

    7.从远程服务器获取文件并放置到本地home路径下

    scp -p 22 root@ip:/home/apache/learn/learn.war.tgz  /home/learn.war.tgz

    8.查看文件显示行数

    cat -n learn.sh

    9.查看日志

    tail  -f  *.log

    10.查看当前路径

    pwd

    11.sed截取命令,截取以learn_s开头learn_e结尾的内容

    sed -i '/learn_s/d' home/initit.js

    sed -i '/learn_e/d' home/Initit.js

    12.cp命令将 /home/apache/file/路径下的文件递归强制复制到/home目录下并更名为Initit.js

    cp -rf /home/Initit.js /home/apache/file/

    二、常用部分脚本

    1.从远程服务端下载apk,替换现有apk,并将原有apk改为加日期格式

    #!/bin/sh

    file_name="learn.apk"   //定义file_name为learn.apk

    url="http://ip:端口号/home/apache/haha.apk"  //定义url中的指定haha.apk文件

    mv ${file_name}  ${file_name}_`date  +%Y%m%d%H%M%S`   //将现有apk重命名为learn.apk_日期(年月日)格式

    wget ${url}  -O ${file_name}  // 把URL中指定的文件下载到当前目录。 要指定不同的文件名,使用-O选项(大写字母O)

    2.创建启动程序、终止程序、重启程序脚本

    #!/bin/sh

    proc_name=$1//程序进程名定义为$1

    proc_start="start"${proc_name}".sh"//定义启动命令名称格式

    proc_stop="stop"${proc_name}".sh"// 定义终止命令名称格式

    proc_restart="restart"${proc_name}".sh"//重定义重启命令名称格式

    touch ${proc_start}  ${proc_stop}  ${procl_restart}//创建开始、终止、重启

    #

    echo '#!/bin/sh'>${proc_start} //将#!/bin/sh写到开始脚本里

    echo '#!/bin/sh'>${proc_stop}// 将#!/bin/sh写到终止脚本里

    echo '#!/bin/sh'>${proc_restart} 将#!/bin/sh写到重启脚本里

    #start开始脚本

    #echo "mkdir /home/learn/${proc_name}/logs  -p" >>${proc_start} //创建日志到开始脚本

    echo "py_flag=pypy" >>${proc_start}//定义启动方式为pypy写入脚本

    echo "proc_name=${proc_name}"    >>${pro_start}//定义程序名称写入脚本

    echo 'proc_app="/home/learn${proc_name}/app.py"'    >>${proc_start}  //定义app.py的路径写入脚本

    echo "mkdir  /var/log/\${proc_name}/  -p"   >>${proc_start}//创建日志路径写入开始脚本

    echo "nohup \${py_flag} \${proc_app}   > /dev/null &  " >>${proc_start}// 运行python程序 app.py脚本并指定存放文件目录

    注意:app.py在此不予讲解

    #stop停止脚本

    echo "proc_name=${proc_name}" >>${proc_stop}

    echo "flag_add=app" >>${proc_stop}

    echo "py_flag=pypy" >>${proc_stop}

    echo "kill -9 \`ps -ef|grep \${proc_name} |grep -v grep  |grep \${flag_add} |grep  \"\${proc_name}/\${flag_add}\" |awk -f\" \" '{print \$2}'\`" >>${proc_stop}//查找到程序的端口号杀死进程

    注意: $2:表示第二个字段  print $2 : 打印第二个字段

    #restart

    echo "proc_name=${proc_name}" >>${proc_restart}

    echo 'stop_shell="/home/learn/stop${proc_name}.sh"' >>${proc_restart}

    echo 'start_shell="/home/learn/start${proc_name}.sh"' >>${procl_restart}

    echo 'sh ${stop_shell}' >>${proc_restart}//执行终止进程脚本

    echo 'sleep 1' >>${proc_restart}//当前线程睡眠1s钟

    echo 'sh ${start_shell}'     >>${proc_restart}//执行开始脚本

    chmod  777  ${pro_start}  ${proc_stop} ${proc_restart}//给三个脚本赋予最高权限

    相关文章

      网友评论

        本文标题:目前最常使用的shell命令及部分脚本总结

        本文链接:https://www.haomeiwen.com/subject/onsgactx.html