File tree Expand file tree Collapse file tree 2 files changed +18
-1
lines changed Expand file tree Collapse file tree 2 files changed +18
-1
lines changed Original file line number Diff line number Diff line change @@ -184,14 +184,27 @@ func CheckHvNmap() bool {
184
184
return false
185
185
}
186
186
187
+ func doReadBuff (buf * bytes.Buffer ) string {
188
+ var a = []string {}
189
+ var data []byte = make ([]byte , 1024 )
190
+ n , err := buf .Read (data )
191
+ for nil == err && 0 < n {
192
+ s1 := string (data [:n ])
193
+ fmt .Println (s1 )
194
+ a = append (a , s1 )
195
+ n , err = buf .Read (data )
196
+ }
197
+ return strings .Join (a , "" )
198
+ }
199
+
187
200
// 最佳的方法是将命令写到临时文件,并通过bash进行执行
188
201
func DoCmd (args ... string ) (string , error ) {
189
202
cmd := exec .Command (args [0 ], args [1 :]... )
190
203
var stdout , stderr bytes.Buffer
191
204
cmd .Stdout = & stdout // 标准输出
192
205
cmd .Stderr = & stderr // 标准错误
193
206
err := cmd .Run ()
194
- outStr , errStr := string ( stdout . Bytes ()), string ( stderr . Bytes () )
207
+ outStr , errStr := doReadBuff ( & stdout ), doReadBuff ( & stderr )
195
208
// out, err := cmd.CombinedOutput()
196
209
if nil != err {
197
210
return "" , err
Original file line number Diff line number Diff line change @@ -113,6 +113,10 @@ func (r *Runner) DoTargets() (bool, error) {
113
113
aR := []string {}
114
114
a := strings .Split (string (data ), "\n " )
115
115
for _ , x := range a {
116
+ // fix 无效的空行
117
+ if 3 > len (x ) {
118
+ continue
119
+ }
116
120
if govalidator .IsURL (x ) {
117
121
if x1 , err := url .Parse (x ); nil == err {
118
122
if govalidator .IsDNSName (x ) {
You can’t perform that action at this time.
0 commit comments