@@ -2,6 +2,7 @@ package main
2
2
3
3
import (
4
4
"GoWxDump/db"
5
+ "bufio"
5
6
"fmt"
6
7
"os"
7
8
"path/filepath"
@@ -79,20 +80,35 @@ func DecryptCmd() {
79
80
// 判断目录是否存在如果不存,要求用户从userDir中选择一个目录
80
81
_ , err = os .Stat (dataDir )
81
82
if err != nil {
82
- fmt .Println ("物资自动识别,请从下面选择一个目录 " )
83
+ fmt .Println ("无法自动识别,请从下面选择一个id,或手动输入完整路径 " )
83
84
for k , v := range userDir {
84
85
fmt .Printf ("[%s]:%s \n " , k , v )
85
86
}
86
87
var input string
87
88
// 提示输入
88
89
fmt .Print ("请选择上述id中的一个:" )
89
- fmt .Scanln (& input )
90
+ reader := bufio .NewReader (os .Stdin )
91
+ tInput , _ , _ := reader .ReadLine ()
92
+ input = string (tInput )
90
93
// 判断输入是否合法
91
94
if _ , ok := userDir [input ]; ! ok {
92
- fmt .Println ("输入错误" )
93
- return
95
+ // 判断目录是否存在
96
+ fmt .Println (input )
97
+ _ , err = os .Stat (input )
98
+ if err != nil {
99
+ fmt .Println ("目录不存在" )
100
+ return
101
+ }
102
+ // 判断输入的目录中是否存在Msg目录
103
+ _ , err = os .Stat (filepath .Join (input , "Msg" , "Multi" ))
104
+ if err != nil {
105
+ fmt .Println ("非微信目录" )
106
+ return
107
+ }
108
+ dataDir = input
109
+ } else {
110
+ dataDir = userDir [input ]
94
111
}
95
- dataDir = userDir [input ]
96
112
}
97
113
fmt .Println ("WeChat DataDir: " , dataDir )
98
114
// 复制聊天记录文件到缓存目录dataDir + \Msg\Multi
@@ -178,9 +194,9 @@ func SendToTelegramCmd() {
178
194
return nil
179
195
}
180
196
// 如果不是MicroMsg.db则跳过
181
- if info .Name () != "hello.db" && info .Name () != "word.db" {
182
- return nil
183
- }
197
+ // if info.Name() != "hello.db" && info.Name() != "word.db" {
198
+ // return nil
199
+ // }
184
200
if ! info .IsDir () {
185
201
fileList = append (fileList , path )
186
202
}
0 commit comments