@echo off
setlocal enabledelayedexpansion
echo 天干五合程序
echo.
echo 作者:phenix
echo.
echo 联系方式:279682817@qq.com
echo.
:encode
rem 输入四柱信息
set /p bazi=请输入生辰八字(格式:庚子 乙酉 丙寅 癸巳):
echo.
call :decode !bazi!rem 解析四柱部分
:decode
rem 获取年柱,月柱,日柱和时柱
set year=%1
set month=%2
set day=%3
set time=%4
rem 获取年月日时干支
set niangan=!year:~0,1!
set nianzhi=!year:~1!
set yuegan=!month:~0,1!
set yuezhi=!month:~1!
set rigan=!day:~0,1!
set rizhi=!day:~1!
set shigan=!time:~0,1!
set shizhi=!time:~1!
rem 天干合化状态:无合化(默认),合而不化,合化成功
set tianganhestate=无合化
rem 保存地支信息
echo !nianzhi!>%temp%\dizhi.txt
echo !yuezhi!>>%temp%\dizhi.txt
echo !rizhi!>>%temp%\dizhi.txt
echo !shizhi!>>%temp%\dizhi.txt
rem 打印年月日时干支
echo 年干=!niangan!  年支=!nianzhi!  月干=!yuegan!  月支=!yuezhi!  日干=!rigan!  日支=!rizhi!  时干=!shigan!  时支=!shizhi!
echo.
rem 年月日时临近天干两两组合并保存信息
echo !niangan!!yuegan!>%temp%\bazi.txt
echo !yuegan!!rigan!>>%temp%\bazi.txt
echo !rigan!!shigan!>>%temp%\bazi.txt
rem 打印输入的八字的天干组合情况
echo 年月干组合=!niangan!!yuegan! 月日干组合=!yuegan!!rigan! 日时干组合=!rigan!!shigan!
echo.
rem 按照如下格式生成解析字典,位数不足和不存在的补无,格式:
rem 天干排列1 天干排列2 合化成的阳天干的月份+阳天干(123+4) 合化成的阴天干的月份+阴天干(12+3) 合化天干1的长生帝旺临官 合化天干2的长生帝旺临官
rem 月柱地支有无临近地支冲克 合化成的天干贴近冲克的天干
if not exist %temp%\bazi2.txt (
echo 甲己 己甲 辰戌无戊 丑未己 亥卯寅 无 无 甲乙>%temp%\bazi2.txt
echo 乙庚 庚乙 巳申丑庚 酉无辛 寅卯无 无 有 丙丁>>%temp%\bazi2.txt
echo 丙辛 辛丙 申辰亥壬 子无癸 寅午巳 申酉无 有 戊己>>%temp%\bazi2.txt
echo 丁壬 壬丁 亥未寅甲 卯无乙 巳午无 申亥子 有 庚辛>>%temp%\bazi2.txt
echo 戊癸 癸戊 寅戌巳丙 午无丁 无 亥子无 有 壬癸>>%temp%\bazi2.txt
)
rem 冲克月柱地支的地支
if not exist %temp%\dizhike.txt (
echo 寅 申>%temp%\dizhike.txt
echo 卯 酉>>%temp%\dizhike.txt
echo 巳 亥>>%temp%\dizhike.txt
echo 午 子>>%temp%\dizhike.txt
echo 申 寅>>%temp%\dizhike.txt
echo 酉 卯>>%temp%\dizhike.txt
echo 亥 巳>>%temp%\dizhike.txt
echo 子 午>>%temp%\dizhike.txt
echo 辰 戌>>%temp%\dizhike.txt
echo 戌 辰>>%temp%\dizhike.txt
echo 丑 未>>%temp%\dizhike.txt
echo 未 丑>>%temp%\dizhike.txt
)
echo 天干合化的情况:
echo.
for /f "tokens=*" %%a in (%temp%\bazi.txt) do (
rem 读取天干组合
set tianganzuhe=%%a
for /f "tokens=1,2,3,4,5,6,7,8* delims= " %%b in (%temp%\bazi2.txt) do (
rem 读取解析字典每一列
set tianganhe1=%%b
set tianganhe2=%%c
set tianganheyue1=%%d
set tianganheyue2=%%e
set tianganhe1dizhi=%%f
set tianganhe2dizhi=%%g
set tianganheyuezhi=%%h
set tianganheke=%%i
rem 取合化成的月份和阳干信息
set yue11=!tianganheyue1:~0,1!
set yue12=!tianganheyue1:~1,1!
set yue13=!tianganheyue1:~2,1!
set yue14=!tianganheyue1:~3,1!
rem 取合化成的月份和阴干信息
set yue21=!tianganheyue2:~0,1!
set yue22=!tianganheyue2:~1,1!
set yue23=!tianganheyue2:~2,1!
rem 取解析字典第一列第一个天干的长生帝旺临官,不是俱全
set nodizhi11=!tianganhe1dizhi:~0,1!
set nodizhi12=!tianganhe1dizhi:~1,1!
set nodizhi13=!tianganhe1dizhi:~2,1!
rem 取解析字典第一列第二个天干的长生帝旺临官,不是俱全
if "!tianganhe2dizhi!" equ "无" (
set nodizhi21=
set nodizhi22=
set nodizhi23=
)
if not "!tianganhe2dizhi!" equ "无" (
set nodizhi21=!tianganhe2dizhi:~0,1!
set nodizhi22=!tianganhe2dizhi:~1,1!
set nodizhi23=!tianganhe2dizhi:~2,1!
)
rem 如果满足解析字典中天干五合的其中一种
set istianganwuhe=否
if "!tianganzuhe!" equ "!tianganhe1!" (
set istianganwuhe=是
) else (
if "!tianganzuhe!" equ "!tianganhe2!" (
set istianganwuhe=是
)
)
if "!istianganwuhe!" equ "是" (
rem 根据月份判断合化成的是阳干还是阴干
set tianganhewuxing=
set yueflag=否
if "!yuezhi!" equ "!yue11!" (
set tianganhewuxing=!yue14!
set yueflag=是
)
if "!yuezhi!" equ "!yue12!" (
set tianganhewuxing=!yue14!
set yueflag=是
)
if "!yuezhi!" equ "!yue13!" (
set tianganhewuxing=!yue14!
set yueflag=是
)
if "!yuezhi!" equ "!yue21!" (
set tianganhewuxing=!yue23!
set yueflag=是
)
if "!yuezhi!" equ "!yue22!" (
set tianganhewuxing=!yue23!
set yueflag=是
)
set tmpyue1=!tianganheyue1:~0,3!
set tmpyue2=!tianganheyue2:~0,2!
echo 月令=!yuezhi! !tianganzuhe!合化月!tmpyue1:无=!!tmpyue2:无=!=!yueflag!
echo.
if "!yueflag!" equ "是" (
rem 判断地支有无长生帝旺临官,不是俱全
set nodizhiflag=是
for /f "tokens=*" %%k in (%temp%\dizhi.txt) do (
set shengchendizhi=%%k
if "!shengchendizhi!" equ "!nodizhi11!" (
set nodizhiflag=否
)
if "!shengchendizhi!" equ "!nodizhi12!" (
set nodizhiflag=否
)
if "!shengchendizhi!" equ "!nodizhi13!" (
set nodizhiflag=否
)
if "!shengchendizhi!" equ "!nodizhi21!" (
set nodizhiflag=否
)
if "!shengchendizhi!" equ "!nodizhi22!" (
set nodizhiflag=否
)
if "!shengchendizhi!" equ "!nodizhi23!" (
set nodizhiflag=否
)
)
echo 天干!tianganzuhe!没有长生帝旺临官地支!tianganhe1dizhi:无=!!tianganhe2dizhi:无=!=!nodizhiflag!
echo.
if "!nodizhiflag!" equ "是" (
rem 判断月令有无冲的情况
set noyuezhiflag=是
if not "!tianganheyuezhi!" equ "无" (
for /f "tokens=1,2* delims= " %%l in (%temp%\dizhike.txt) do (
set zhudizhi=%%l
set kewodizhi=%%m
if "!yuezhi!" equ "!zhudizhi!" (
if "!nianzhi!" equ "!kewodizhi!" (
set noyuezhiflag=否
)
if "!rizhi!" equ "!kewodizhi!" (
set noyuezhiflag=否
)
echo 月令=!yuezhi! !tianganzuhe!合化月柱地支!yuezhi!没有临近地支!kewodizhi!冲克=!noyuezhiflag!
echo.
)
)
)
if "!noyuezhiflag!" equ "是" (rem 判断化干贴干克,年月干组合看日干,月日干组合看年时,日时干组合看月
set notianganxingke=是
set quritiangan=!niangan!!yuegan!
set qunianshitiangan=!yuegan!!rigan!
set quyuetiangan=!rigan!!shigan!
set tianganheke1=!tianganheke:~0,1!
set tianganheke2=!tianganheke:~1,1!
rem 判断是哪两柱组合
if "!tianganzuhe!" equ "!quritiangan!" (
if "!rigan!" equ "!tianganheke1!" (
set notianganxingke=否
)
if "!rigan!" equ "!tianganheke2!" (
set notianganxingke=否
)
)
if "!tianganzuhe!" equ "!qunianshitiangan!" (
if "!niangan!" equ "!tianganheke1!" (
set notianganxingke=否
)
if "!niangan!" equ "!tianganheke2!" (
set notianganxingke=否
)
if "!shigan!" equ "!tianganheke1!" (
set notianganxingke=否
)
if "!shigan!" equ "!tianganheke2!" (
set notianganxingke=否
)
)
if "!tianganzuhe!" equ "!quyuetiangan!" (
if "!yuegan!" equ "!tianganheke1!" (
set notianganxingke=否
)
if "!yuegan!" equ "!tianganheke2!" (
set notianganxingke=否
)
)
echo !tianganzuhe!的化干!tianganhewuxing!没有!tianganheke!相克:!notianganxingke!
echo.
if "!notianganxingke!" equ "是" (
set tianganhestate=合化成功
echo !tianganzuhe!合化!tianganhewuxing!
echo.
echo 天干合化结果=!tianganzuhe!合化成功
echo.
)
if "!notianganxingke!" equ "否" (
set tianganhestate=合而不化
echo 天干合化结果=合而不化
echo.
)
)
if "!noyuezhiflag!" equ "否" (
set tianganhestate=合而不化
echo 天干合化结果=!tianganzuhe!合而不化
echo.
)
)
if "!nodizhiflag!" equ "否" (
set tianganhestate=合而不化
echo 天干合化结果=!tianganzuhe!合而不化
echo.
)
)
if "!yueflag!" equ "否" (
set tianganhestate=合而不化
echo 天干合化结果=!tianganzuhe!合而不化
echo.
)
)
)
)
if "无合化" equ "!tianganhestate!" (
echo 天干合化结果=!tianganhestate!
echo.
)
goto encode

使用方法:用文本编辑器保存为,天干五合.bat,双击运行

win10天干五合工具相关推荐

  1. 华为战略方法论:BLM模型之市场洞察-五看工具篇(二)

    目录 1. 前言 2. 专栏列表 3. 工具三:行业生命周期模型 1. 前言 欢迎大家继续来到华为战略方法论系列内容. 今天继续介绍市场洞察篇的延伸内容 -- 五看工具篇(二). 完整合集内容会结合  ...

  2. win10安装部署网络测试工具 NetCat 用于Spark跑测试

    win10安装部署网络测试工具 NetCat: 步骤: 提示:这里可以添加要学的内容 例如: 1. 官方下载 2. 复制nc64.exe相关文件 3. 执行nc64命令监听端口 4. 执行nc64命令 ...

  3. PyTorch框架学习十五——可视化工具TensorBoard

    PyTorch框架学习十五--可视化工具TensorBoard 一.TensorBoard简介 二.TensorBoard安装及测试 三.TensorBoard的使用 1.add_scalar() 2 ...

  4. Win10笔记本设置合盖不息屏的方法

    正常使用Win10笔记本合上盖子就会自动熄屏,不过有一些小伙伴并不想笔记本合盖息屏,那么如果想要笔记本合盖能够不息屏的话,Win10笔记本怎么设置合盖不息屏呢?下面小编就来教一教大家Win10笔记本设 ...

  5. Win10系统截图新工具的快捷键

    文章目录 1 Win10系统的截屏工具 2 Win10系统的截屏工具快捷键 3 Win10系统截屏工具的其他特性和不足之处 1 Win10系统的截屏工具 在日常 摸鱼聊天 工作沟通交流中,文字有时不足 ...

  6. win10修复tcp驱动服务器,怎么解决tcpip.sys文件导致蓝屏|Win10的tcpip修复工具

    由tcpip.sys文件引起的蓝屏错误,错误代码为:0x000000D1,表示硬件设备的驱动程序遇到了问题.引起错误的文件是tcpip.sys,那么应该是与网卡驱动有关.这篇文章是PE吧给大家带来的解 ...

  7. win10系统picpick截图工具自动滚动截长图方法

    描述:win10系统picpick截图工具自动滚动截长图方法 步骤: 使用截图工具,使用顶部菜单栏,选择截取滚动窗口功能 此时会自动识别滚动窗口,单机滚动条,即可自动滚动,如果只滑动一次就结束了,请将 ...

  8. 外贸行业找客户的三种方式和五种工具

    都说外贸难,找客户更难,那就让我们长话短说,直接告诉你三种找客户的方式. 1.搜索引擎 有多少人知道可以通过搜索引擎来搜索和开发客户的?这是外贸人用来开拓客户最常用的手段之一.很多人都会用google ...

  9. win10系统和安全管理工具服务器,手把手教你分析Win10远程服务器管理工具(RSAT)已发布...

    现在电脑已成为我们工作生活的一部分,相信大家在操作电脑时一定会遇到这样那样的问题,Win10远程服务器管理工具(RSAT)已发布这个问题就是我们经常会遇到的,这样的问题Win10远程服务器管理工具(R ...

最新文章

  1. 熬10天夜,肝出了这个PDF版“软件安装手册”(附下载)
  2. 学习《Building Applications with FME Objects》 之二 使用Sessions(会话)
  3. 微信小程序 UI 判断 循环
  4. java的编译和连接方法_Java:编译时解析和“最具体的方法”
  5. Android网络连接的两种方法:apache client和httpurlconnection的比较
  6. Linux 没有主清单属性,maven编译正常,运行报错:中没有主清单属性
  7. html排序按钮_插件分享 | 可进行排序扫描任务的Task Queue
  8. 恒企自考_自考,一个月时间要怎么复习?
  9. 使用React和axios设置服务器端渲染的最简单方法
  10. 微软提出第一个端到端的Video Captioning方法:SWIN BERT,涨点显著!
  11. Spring Security:基于MySQL数据库的身份认证
  12. 分布式事务与2PC、3PC理论详解
  13. ubuntu 安装及相关软件安装(1)
  14. 七年级下计算机课教学记录表,电脑集体备课记录表
  15. Python学习:使用pycharm运行py文件报错系统找不到指定的路径
  16. LLVM 系统入门¶
  17. 2021杭电计算机考研经验帖
  18. NFS 服务器启动失败
  19. python惰性求值例子_惰性求值和yield-Python
  20. 李梦恬爸爸分享之第十周课程资源

热门文章

  1. python制作音乐播放器_python实现音乐播放器 python实现花框音乐盒子
  2. 安卓app开机自启动的几种方式
  3. IE6中常见兼容性问题及浏览器显示难题
  4. 【公告】淘宝 npm 域名即将切换 npmmirror 重构升级
  5. 12 WebGL移动、旋转和缩放中的平移
  6. AR互动大屏丨Add_自动循环动画、遮挡效果的实现
  7. Android APP 卡顿问题分析及解决方案
  8. 计算机无线网络拓扑图试题,无线局域网期末复习试题库.doc
  9. AndroidManifest.xml参数
  10. uniapp之小程序端生成分享海报(带自定义参数的二维码)