菜鸟站长
个人博客主题模板、应用插件、功能开发技术资源聚合分享网站

mac电脑上使用command快速打包Typecho主题

发布者:菜鸟站长  发布日期:2023-12-30  更新日期:2023-12-30  人气指数:687

本地开发每次手动打包压缩主题文件夹感觉都挺难受的,今天刚好看到xiamp博主写的cmd脚本,想着mac下应该也能实现类似的,左右就问ai帮我写写。

代码

把下面的代码保存为pick.command,放到主题目录下,双击即可打包主题到主题目录下

#!/bin/bash

# 设置变量
current_directory=$(dirname "$0")

# 创建排除A文件夹的压缩包
cd "$current_directory"

# 从index.php文件中提取版本号和主题名
VERSION=$(grep -Eo '\*\s+@version\s+([0-9.]+)' index.php | grep -Eo '[0-9.]+')
THEME=$(grep -Eo '\*\s+@package\s+[a-zA-Z0-9.]+' index.php | awk '{print $NF}')

 excluded_folder="node_modules"
 zip_date=$(date '+%Y%m%d')  # 获取当前日期,格式为年月日,备用

 zip_filename="$THEME($VERSION)"  # 在文件名中添加版本号

 zip -r "../$THEME/$zip_filename.zip" "../$THEME" --exclude "../$THEME/$excluded_folder/*"
 # tar -czf "../$THEME/$zip_filename.tar.gz" -C "../$THEME" --exclude "$excluded_folder" .

 echo "压缩包已创建:../$THEME/$zip_filename"

说明

默认打包后的压缩包名字为 主题名(主题版本号),如果想改为日期形式可将zip_filename="$THEME($VERSION)"改为zip_filename="$THEME($zip_date)"

其中node_modules为排除的文件夹,就是主题文件夹里面node_modules这个文件夹不进行打包。

打包后的zip压缩包用mac电脑自带的解压工具无法解压,感觉应该是因为打包的信息缺少Mac需要的文件信息,此时如果想在Mac电脑上解压,需要用其他解压工具才能解压。

或者把

zip -r "../$THEME/$zip_filename.zip" "../$THEME" --exclude "../$THEME/$excluded_folder/*"
 # tar -czf "../$THEME/$zip_filename.tar.gz" -C "../$THEME" --exclude "$excluded_folder" .

改成

 # zip -r "../$THEME/$zip_filename.zip" "../$THEME" --exclude "../$THEME/$excluded_folder/*"
tar -czf "../$THEME/$zip_filename.tar.gz" -C "../$THEME" --exclude "$excluded_folder" .

这样就改成tar.gz格式的压缩包了,Mac电脑默认就能解压了,不过 菜鸟站长 还是喜欢zip哈!

本文检索关键词:typecho教程

菜鸟站长推荐教程



添加新评论 »

icon_mrgreen.pngicon_neutral.pngicon_twisted.pngicon_arrow.pngicon_eek.pngicon_smile.pngicon_confused.pngicon_cool.pngicon_evil.pngicon_biggrin.pngicon_idea.pngicon_redface.pngicon_razz.pngicon_rolleyes.pngicon_wink.pngicon_cry.pngicon_surprised.pngicon_lol.pngicon_mad.pngicon_sad.pngicon_exclaim.pngicon_question.png