Linux获取q7签名文件的签名时间脚本

2023-11-08 21:20

本文主要是介绍Linux获取q7签名文件的签名时间脚本,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

本文脚本,在UOS上测试通过。

 

脚本代码

#!/bin/bash
echo 请将q7文件拖入:
read file
file=`echo "$file"|sed s/\'//g` #去除文件名前后的单引号 ' 否则后面的判断不对isq7=`echo "$file"|awk -F. '{print $NF}'`
if [ $isq7 != "q7" ];thenecho 后缀名不是.q7,脚本将退出2!read -n 1exit
fiif [ -e "$file" ];then  #文件存在为真time=`cat "$file"|grep --binary-files=text 'date'|awk -F, '{print $4}'`echo -e $time "\n"year=`echo $time|awk '{print $6}'|cut -c 1-4`month=`echo $time|awk '{print $2}'`if [ $month = "Jan" ];then #sh中,文本比较符是 = 而不是 ==month="1"elif [ $month = "Feb" ];thenmonth="2"elif [ $month = "Mar" ];thenmonth="3"elif [ $month = "Apr" ];thenmonth="4"elif [ $month = "May" ];thenmonth="5"elif [ $month = "Jun" ];thenmonth="6"elif [ $month = "Jul" ];thenmonth="7"elif [ $month = "Aug" ];thenmonth="8"elif [ $month = "Sep" ];thenmonth="9"elif [ $month = "Oct" ];thenmonth="10"elif [ $month = "Nov" ];thenmonth="11"elif [ $month = "Dec" ];thenmonth="12"fiecho 签名时间:$year年 $month月echo 签名有效期一般为一年,可将时间设置在签名之后一个月
elseecho "q7文件不存在,请检查输入!"
firead -n 1#skyyx2002
#2022.06.28

将上面的脚本保存(最好在Linux上操作,Windows上可能因换行符等问题执行时出错),如:

ea2b301146f64d26a0b5344b58707b1f.png

使用方法

先给脚本执行权限:

chmod 777 获取q7文件签名日期.sh  #注意修改文件路径和文件名

然后双击脚本,会弹出如下对话框:

2549fe21fdac4791ac74a509906221c1.png

点击“在终端中运行”,弹出:

dc42d49073264df9b67bed6e0184185c.png

将q7文件拖拽到终端窗口后放开,这样终端窗口就会获取到文件完整的路径和名称:

9a40b5531bdb4aba9227d0f65f05de50.png

此时点击终端窗口,然后按下回车,即可得到签名时间:

67711f5976844e349815309358d9cd37.png

一些问题

1、如果使用sh命令来调用脚本,那么最后一句“read -n 1”将执行失败!因此不建议使用sh来调用,可以用bash。如果实在喜欢用sh,那就加上参数:sh -c 

2、脚本放在U盘上执行时,需要注意U盘的分区格式!Fat32是不支持Linux权限的,因此直接双击脚本,默认会使用文本编辑器打开,而脚本并不会被执行!可以把U盘分区格式化成exFat或者ntfs,或者使用bash来调用脚本即可。

 

这篇关于Linux获取q7签名文件的签名时间脚本的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/372597

相关文章

Java controller接口出入参时间序列化转换操作方法(两种)

《Javacontroller接口出入参时间序列化转换操作方法(两种)》:本文主要介绍Javacontroller接口出入参时间序列化转换操作方法,本文给大家列举两种简单方法,感兴趣的朋友一起看... 目录方式一、使用注解方式二、统一配置场景:在controller编写的接口,在前后端交互过程中一般都会涉及

redis中使用lua脚本的原理与基本使用详解

《redis中使用lua脚本的原理与基本使用详解》在Redis中使用Lua脚本可以实现原子性操作、减少网络开销以及提高执行效率,下面小编就来和大家详细介绍一下在redis中使用lua脚本的原理... 目录Redis 执行 Lua 脚本的原理基本使用方法使用EVAL命令执行 Lua 脚本使用EVALSHA命令

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

python处理带有时区的日期和时间数据

《python处理带有时区的日期和时间数据》这篇文章主要为大家详细介绍了如何在Python中使用pytz库处理时区信息,包括获取当前UTC时间,转换为特定时区等,有需要的小伙伴可以参考一下... 目录时区基本信息python datetime使用timezonepandas处理时区数据知识延展时区基本信息

SpringBoot整合mybatisPlus实现批量插入并获取ID详解

《SpringBoot整合mybatisPlus实现批量插入并获取ID详解》这篇文章主要为大家详细介绍了SpringBoot如何整合mybatisPlus实现批量插入并获取ID,文中的示例代码讲解详细... 目录【1】saveBATch(一万条数据总耗时:2478ms)【2】集合方式foreach(一万条数

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

python获取网页表格的多种方法汇总

《python获取网页表格的多种方法汇总》我们在网页上看到很多的表格,如果要获取里面的数据或者转化成其他格式,就需要将表格获取下来并进行整理,在Python中,获取网页表格的方法有多种,下面就跟随小编... 目录1. 使用Pandas的read_html2. 使用BeautifulSoup和pandas3.

SpringBoot UserAgentUtils获取用户浏览器的用法

《SpringBootUserAgentUtils获取用户浏览器的用法》UserAgentUtils是于处理用户代理(User-Agent)字符串的工具类,一般用于解析和处理浏览器、操作系统以及设备... 目录介绍效果图依赖封装客户端工具封装IP工具实体类获取设备信息入库介绍UserAgentUtils

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Java中字符串转时间与时间转字符串的操作详解

《Java中字符串转时间与时间转字符串的操作详解》Java的java.time包提供了强大的日期和时间处理功能,通过DateTimeFormatter可以轻松地在日期时间对象和字符串之间进行转换,下面... 目录一、字符串转时间(一)使用预定义格式(二)自定义格式二、时间转字符串(一)使用预定义格式(二)自