【golang】golang使用cmd去ping网址在window和linux的区别
设置ping的次数,在linux和window上,命令内容不一样
window
ping -n 2 php-china.com
linux
ping -c 2 php-china.com
//设置类型别名
type Charset stringconst (UTF8 = Charset("UTF-8")GB18030 = Charset("GB18030")UNKNOWN = Charset("UNKNOWN")
)func main() {//获取当前系统sysType := runtime.GOOSswitch sysType {case "windows":execCommandPingWeb("www.baidu.com", "-n", "2")case "linux":execCommandPingWeb("www.baidu.com", "-c", "2")default:log.Fatal("系统获取失败")}fmt.Println(runtime.GOOS)
}
func execCommandPingWeb(web string, arg ...string) {var outInfo, outErr bytes.Buffercmd := exec.Command("ping", arg[0], arg[1], web)cmd.Stdout = &outInfocmd.Stderr = &outErrif err := cmd.Run(); err != nil {fmt.Println("错误", err)return}coding := GetStrCoding([]byte(outInfo.String()))res := ConvertByte2String([]byte(outInfo.String()), coding)fmt.Println(res)
}
func ConvertByte2String(byte []byte, charset Charset) Charset {var str Charsetswitch charset {case GB18030:var decodeBytes, _ = simplifiedchinese.GB18030.NewDecoder().Bytes(byte)str = Charset(decodeBytes)case UTF8:fallthroughdefault:str = Charset(byte)}return str
}
个人网站:沉默博客
如有错误,请多多指教。
如对你有帮助,给个赞吧。
【golang】golang使用cmd去ping网址在window和linux的区别相关推荐
- golang语言的入门基础,及window和linux系统上环境的搭配及运行
golang语言的入门基础,及window和linux系统上环境的搭配及运行 简介: Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性.Go语言专门针对多处理器 ...
- 发现一个多地区 ping 网址的工具,岂止一个“牛”字了得
今天在写这篇博客时发现了一个特牛逼的工具:http://ping.chinaz.com 在工具主页对工具用处的描述: 通过该工具可以多个地点 Ping 服务器以检测服务器响应速度. 我们知道,可以通过 ...
- 使用cmd命令 ping网段内的使用的IP并输出到文件
使用cmd命令 ping网段内的使用的IP并输出到文件 代码: echo off chcp 65001 echo ping日期: %date%>>C:\Users\ZSZ\Desktop\ ...
- Ubuntu上不了网,不可以ping网址,但是可以ping通其ip
自己的ubuntu16.04系统,在一次因为gdm登录显示器崩溃后进入不了系统,折腾时可能删了不该删的东西.导致后来切换为lightdm 进入系统后,无法正常访问网络. 出现的问题:网络已经连接上了, ...
- php ping 域名,怎么利用PHP去ping一个地址_PHP
Ping 怎么利用PHP去ping一个地址 怎么利用PHP去ping一个地址 请输入url或ip地址: ?lt;/td> if(($server == '127.0.0.1') | | ($se ...
- cmd 批量ping命令
cmd 批量ping命令 1.批量ping 1个网段 2.批量ping多个网段 1.批量ping 1个网段 ping 1个网段 for /l %X in (2,1,254) do (ping -n 2 ...
- linux下指定某个ip去ping,Linux下指定源ip进行ping操作的方法
[序言] 目前在做一台电脑上两个虚拟机之间的通信. 对于每个虚拟机都有两个网卡,一个桥接模式和一个NAT模式. 那么问题来了.... 如果使用简单的ping ip形式的命令得到ping通的结果,只能证 ...
- 【利用cmd命令 ping 局域网内所有IP】
[利用cmd命令 ping 局域网内所有IP] eg: for /L %D in (1,1,255) do ping -w 5 10.12.30.%D (1,1,255)中的 第一个参数1 :star ...
- [golang] golang文件读写 os.OpenFile(fileName,os.O_APPEND|os.O_WRONLY,os.ModeAppend)
[golang] golang文件读写 os.OpenFile(fileName,os.O_APPEND|os.O_WRONLY,os.ModeAppend) 读写文件要用到的OS包 func Ope ...
最新文章
- Hibernate 异常org.hibernate.LazyInitializationException: could not initialize prox
- Office WORD如何设置表格背景颜色
- 页面如何让它不显示标题栏,菜单栏,工具栏,地址栏
- Spring事务传递性探讨
- Hbase的基本认识
- java advance_JavaAdvance
- SOAP HTTP绑定
- 常用计算机网络性能指标的是什么,什么是Bit?【计算机网络的性能指标】
- win与linux渊源,微软与Linux从对立走向合作,WSL是如何诞生的
- SQL Server Compact 3.5开发环境说明
- java编程 停等协议_在应用层模拟实用停等协议
- ssm电影院订票系统 前端layui
- 技嘉服务器主板是什么型号,技嘉主板小型号字母代表什么意思?
- Linux利用sed批量自动化更换IP
- 刷题——求斐波那契数列的第n项(迭代)
- 光猫通过 Telnet 修改自带 WLAN 功能 SSID 强制 ChinaNet- 问题
- 《自然-机器智能》:神经形态技术可使大型深度学习网络节能16倍
- php 汉语转换拼音
- 战争艺术 java_战争艺术2网络对战版
- 【软件测试】自动化测试战零基础教程——Python自动化从入门到实战(一)