您的位置:首页 > 健康 > 美食 > 网页界面设计赏析_标志设计说明_深圳推广系统_曲靖百度推广

网页界面设计赏析_标志设计说明_深圳推广系统_曲靖百度推广

2025/1/4 7:25:19 来源:https://blog.csdn.net/weixin_43025151/article/details/142667294  浏览:    关键词:网页界面设计赏析_标志设计说明_深圳推广系统_曲靖百度推广
网页界面设计赏析_标志设计说明_深圳推广系统_曲靖百度推广

文章目录

    • 1,shell核心概念
      • 1. 1,变量
      • 1. 2. 引号
      • 1. 3. 循环
      • 1. 4. 条件判断
      • 1. 5. 函数
      • 1. 6. 重定向
      • 1. 7. 管道
      • 1. 8. 通配符
    • 2,案例

本文通过介绍Linux Shell编程中最重要的十个核心概念,帮助初学者快速入门。

1,shell核心概念

1. 1,变量

变量是存储数据值的标识符。在Shell脚本中,变量分为环境变量、位置变量和用户自定义变量。
示例:

# 定义变量
my_variable="Hello, World!"
# 使用变量
echo $my_variable 

在这里插入图片描述

1. 2. 引号

在Shell脚本中,引号用于定义字符串。单引号和双引号有不同的作用,单引号会忽略特殊字符,而双引号会保留特殊字符的原本含义。

示例:

# 单引号
echo 'Hello, $my_variable'
# 双引号
echo "Hello, $my_variable" 

在这里插入图片描述

1. 3. 循环

循环用于重复执行一系列命令。常见的循环有for循环、while循环和until循环。

示例(for循环):

for i in {1..5}; 
do echo "Loop $i"
done 

在这里插入图片描述

1. 4. 条件判断

条件判断用于根据特定条件执行不同的操作。常见的条件判断有if语句、case语句等。

示例(if语句):

if [ $i -eq 1 ]; 
then  
echo "i is equal to 1."
fi

在这里插入图片描述

1. 5. 函数

函数是一段可重复使用的代码块,可以提高代码的模块化程度。

示例:

my_function() {echo "Hello, $1"
}my_function "World"

在这里插入图片描述

1. 6. 重定向

重定向用于改变命令的输入输出方向,常见的重定向有标准输入(stdin)、标准输出(stdout)和标准错误输出(stderr)。

示例:

# 将输出重定向到文件
echo "Hello, World!" > output.txt 

在这里插入图片描述

1. 7. 管道

管道用于将一个命令的输出作为另一个命令的输入。

示例:

# 查找当前目录下包含“txt”的文件,并统计数量
ls | grep txt | wc -l 

在这里插入图片描述

1. 8. 通配符

通配符用于匹配文件名,常见的通配符有*(匹配任意字符)、?(匹配单个字符)等。

示例:

# 删除当前目录下所有.txt文件
rm *.txt
  1. Shell脚本执行权限
    为Shell脚本设置执行权限,使其能够独立运行。

示例:

# 为脚本添加执行权限
chmod +x my_script.sh
# 运行脚本./my_script.sh 
  1. 调试
    在编写Shell脚本时,调试是必不可少的环节。使用set命令可以开启调试模式。

示例:

# 开启调试模式
set -x
# 执行命令
ls 

2,案例

Linux一键批量启动、停止、重启Jar包Shell脚本

#!/bin/bash
#C机子启动停止5个vts微服务
#端口号,根据此端口号确定PIDexport PORT1=8078
export PORT2=8079
export PORT3=8086
export PORT4=8088
export PORT5=8089
export PORT6=8091
export PORT7=8092
export PORT8=8093
export PORT9=8095
export PORT10=8099
#启动命令所在目录
export HOME='/home/project'
#jar包所在目录
export jt809_monitor8078=/home/project/jt809-monitor-0.0.1-SNAPSHOT.jar
export jt809_service8079=/home/project/jt809-service-0.0.1-SNAPSHOT.jar
export protocol_service8086=/home/project/protocol-service-1.0-SNAPSHOT.jar
export trans_service8088=/home/project/trans-service-1.0-SNAPSHOT.jar
export info_sys_service8089=/home/project/info-sys-service-1.0-SNAPSHOT.jar
export vts_consumer8091=/home/project/vts-consumer-0.0.1-SNAPSHOT.jar
export report_service8092=/home/project/report-service-1.0-SNAPSHOT.jar
export peripheral_data_protocol_service8093=/home/project/peripheral-data-protocol-service-1.0-SNAPSHOT.jar
export peripheral_data_business_service8095=/home/project/peripheral-data-business-service-1.0-SNAPSHOT.jar
export jt808_service8099=/home/project/jt808-service-1.0-SNAPSHOT.jar
#查询出监听了PORT端口TCP协议的程序
pid1=`ps -ef|grep $jt809_monitor8078|grep -v grep|awk '{print $2}' `
pid2=`ps -ef|grep $jt809_service8079|grep -v grep|awk '{print $2}' `
pid3=`ps -ef|grep $protocol_service8086|grep -v grep|awk '{print $2}' `
pid4=`ps -ef|grep $trans_service8088|grep -v grep|awk '{print $2}' `
pid5=`ps -ef|grep $info_sys_service8089|grep -v grep|awk '{print $2}' `
pid6=`ps -ef|grep $vts_consumer8091|grep -v grep|awk '{print $2}' `
pid7=`ps -ef|grep $report_service8092|grep -v grep|awk '{print $2}' `
pid8=`ps -ef|grep $peripheral_data_protocol_service8093|grep -v grep|awk '{print $2}' `
pid9=`ps -ef|grep $peripheral_data_business_service8095|grep -v grep|awk '{print $2}' `
pid10=`ps -ef|grep $jt808_service8099|grep -v grep|awk '{print $2}' `
start(){if [ -n "$pid5" ]; thenecho "info_sys_service8089 already start,pid:$pid5"return 0fi#进入命令所在目录cd $HOMEnohup java -Dspring.datasource.workId=13 -Dspring.datasource.dataCenterId=13 -Dhsf.server.ip=192.168.1.93 -Dhsf.server.port=12299 -Dpandora.location=/home/tools/taobao-hsf.sar-2019-06-stable.jar -Dlog4j2.formatMsgNoLookups=true -Dhsf.http.port=12232 -Dpandora.qos.port=12233 -Djmenv.tbsite.net=127.0.0.1 -jar $HOME/info-sys-service-1.0-SNAPSHOT.jar --server.port=8089 > /dev/null 2>&1 &#启动服务 日志输出echo "info_sys_service8089 start at port:$PORT5"if [ -n "$pid6" ]; thenecho "vts_consumer8091 already start,pid:$pid6"return 0fi#进入命令所在目录cd $HOMEnohup java -Dhsf.server.ip=192.168.1.93 -Dhsf.server.port=12205 -Dlog4j2.formatMsgNoLookups=true -Dpandora.location=/home/tools/taobao-hsf.sar-2019-06-stable.jar -jar $HOME/vts-consumer-0.0.1-SNAPSHOT.jar --server.port=8091 > /dev/null 2>&1 &#启动聊天服务器 把日志输出到HOME目录的server.log文件中echo "vts_consumer8091 start at port:$PORT6"
}
stop(){if [ -z "$pid5" ]; thenecho "not find info_sys_service8089 on port:$PORT5"return 0fi#结束程序,使用讯号2,如果不行可以尝试讯号9强制结束kill -9 $pid5rm -rf $pid5echo "kill info_sys_service8089 use signal 2,pid:$pid5"if [ -z "$pid6" ]; thenecho "not find vts_consumer8091 on port:$PORT6"return 0fi#结束程序,使用讯号2,如果不行可以尝试讯号9强制结束kill -9 $pid6rm -rf $pid6echo "kill vts_consumer8091 use signal 2,pid:$pid6"
}
status(){if [ -z "$pid5" ]; thenecho "not find info_sys_service8089 on port:$PORT5"elseecho "info_sys_service8089 is running,pid:$pid5"fiif [ -z "$pid6" ]; thenecho "not find vts_consumer8091 on port:$PORT6"elseecho "vts_consumer8091 is running,pid:$pid6"fi
}case $1 instart)start;;stop);;restart)$0 stopsleep 2$0 start;;status)status;;*)echo "Usage: {start|stop|status}"exit 0
esac
fileformat=unix

本文针对Linux初学者,详细介绍了Shell编程的十个核心概念,并通过具体示例帮助读者理解和掌握这些概念。希望本文能为Linux初学者在学习Shell编程的道路上提供有益的指导。

在这里插入图片描述


人生从来没有真正的绝境。只要一个人的心中还怀着一粒信念的种子,那么总有一天,他就能走出困境,让生命重新开花结果。


版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com