linux 自定义short脚本

本文介绍了一个用于创建快捷命令的脚本,该脚本能根据不同类型的服务器环境(如Jetty和JBoss)设置相应的环境变量及命令别名,便于开发者快速启动、停止应用和服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

执行脚本


alias ppsapp='. /home/sfapp/.pps_profile jetty PPS_APP_CNSZ22_JETTY_01'




脚本语言

#!/bin/bash

createShortCmd()
{
    if [ $# -ne 3 ];
    then
       return 1;
    fi

    v_sbase=$1
    v_slog=$2
    v_slname=$3

    export jbase="${v_sbase}"
    export jserver="${jbase}/server"
    export japp="${jserver}/${jname}"
    export jwar="/app/war/${jname}"
    export jlog="${jserver}/${jname}/${v_slog}"

    if [ ${server_type} = 'jetty' ];then
        alias start="sudo ${jbase}/logs/${jname}.sh start"
        alias stop="sudo ${jbase}/logs/${jname}.sh stop"
        alias restart="sudo ${jbase}/logs/${jname}.sh restart"
    else
        alias start="${jbase}/logs/${jname}.sh start"
        alias stop="${jbase}/logs/${jname}.sh stop"
        alias restart="${jbase}/logs/${jname}.sh stop; ${jbase}/logs/${jname}.sh start"
    fi

    alias log="tail -400f ${jserver}/${jname}/${v_slog}/${v_slname}"
    alias vlog="vi -R ${jserver}/${jname}/${v_slog}/${v_slname}"
    alias mlog="more ${jserver}/${jname}/${v_slog}/${v_slname}"
    alias p="ps -ef | head -1; ps -ef | grep "${jname}" | grep java | grep -v grep"
}

main()
{

    if [ $# -ne 2 ];
    then
       return;
    fi

    #print server inforamtion
    alias jman='echo -e "server info [ server type: ${server_type} ; app name: ${server_app_name} ]\n"'
    alias helpme='echo -e "\nshort env: jbase,jserver,jname,japp,jwar,jlog \nshort command: jman,start,stop,restart,log,vlog,mlog,p\n"'
    alias ..="cd .."
    export jname="${server_app_name}"

    v_server_base=''
    v_server_log=''
    v_server_log_name=''

    case "$server_type" in
         jboss)
             v_server_base="/app/jboss/jboss-as"
             v_server_log="log"
             v_server_log_name='server.log'
             ;;
          jetty)
             v_server_base="/app/jetty"
             v_server_log="logs"
             v_server_log_name="novatar_${curdate}_audit.0.log"
             ;;
             *)
    esac

    createShortCmd ${v_server_base} ${v_server_log} ${v_server_log_name}
}

server_type=$1
server_app_name=$2

alias ..='cd ..'
curdate=`date '+%Y%m%d'`

#execute main function
main $@


### 回答1: 基本上,你可以使用这个脚本来检查Linux系统的健康状况:#!/bin/bash#检查硬件状态 echo "检查硬件状态:" echo "---------------------------" lshw -short#检查内存使用情况 echo "检查内存使用情况:" echo "---------------------------" free -m#检查磁盘使用情况 echo "检查磁盘使用情况:" echo "---------------------------" df -h#检查正在运行的进程 echo "检查正在运行的进程:" echo "---------------------------" ps -aux#检查网络连接 echo "检查网络连接:" echo "---------------------------" netstat -putan ### 回答2: 巡检Linux系统是为了确保系统的稳定性和安全性,以及及时发现和解决可能存在的问题。下面是一个简单的巡检Linux的Shell脚本示例: ```shell #!/bin/bash logfile="inspection_log.txt" # 巡检日志文件路径 # 检查系统基本信息 echo "===== 系统基本信息 =====" >> $logfile hostnamectl >> $logfile echo "" >> $logfile # 检查磁盘空间使用情况 echo "===== 磁盘空间使用情况 =====" >> $logfile df -h >> $logfile echo "" >> $logfile # 检查CPU和内存使用情况 echo "===== CPU和内存使用情况 =====" >> $logfile top -n 1 -b >> $logfile echo "" >> $logfile # 检查网络连接情况 echo "===== 网络连接情况 =====" >> $logfile netstat -tuln >> $logfile echo "" >> $logfile # 检查系统进程情况 echo "===== 系统进程情况 =====" >> $logfile ps aux >> $logfile echo "" >> $logfile # 检查日志文件错误信息 echo "===== 日志文件错误信息 =====" >> $logfile grep "error" /var/log/syslog >> $logfile echo "" >> $logfile echo "巡检完成,结果已记录到 $logfile" ``` 这个脚本通过调用一些常用的Linux命令来进行巡检,比如查看系统基本信息、磁盘空间使用情况、CPU和内存使用情况、网络连接情况、系统进程情况以及检查日志文件中的错误信息等。巡检结果会保存到指定的日志文件中,并在脚本执行完成后显示出来。你可以根据实际需要进行调整和扩展,以满足特定的巡检要求。 ### 回答3: 巡检 Linux 系统是确保系统正常运行的重要工作,下面是一个简单的巡检 Linux 的 shell 脚本示例: ```shell #!/bin/bash # 声明要巡检的服务器列表 servers=("server1" "server2" "server3") # 声明要巡检的服务列表 services=("httpd" "mysql" "ssh") # 循环遍历服务器列表 for server in ${servers[@]}; do echo "服务器: $server" # SSH 连接到服务器 ssh username@$server << EOF # 迭代服务列表 for service in ${services[@]}; do # 检查服务状态并输出结果 if systemctl is-active $service >/dev/null 2>&1; then echo "服务 $service 正在运行" # 执行其他巡检任务... else echo "服务 $service 未运行" # 执行其他巡检任务... fi done EOF done ``` 这个脚本使用了循环遍历服务器列表,使用 SSH 连接到每个服务器,并在服务器上迭代服务列表来检查服务的状态。如果服务正在运行,则输出 "服务正在运行",如果未运行,则输出 "服务未运行"。你还可以在适当的地方添加其他巡检任务。请替换 `username` 为你的实际用户名,并根据需要自定义服务器和服务列表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值