毕竟同为胶水语言。Python能干很多bash不能干的事情。当然效率方面,bash上某些用c写的工具可能比Python要高,比如awk,sed(这些应该不是bash的一部分,Python也能调用,不过有调用的时间,你都够把结果跑出来了。)等,你自己用Python实现,会慢的一比,但是awk就很爽。
go的话,毕竟写的太慢烦了。不过写完之后把所有系统类型的都编译出来也是不错的选择。我现在一部分的工具就是用go写的。windows,linux,通用,非常不错。
不过还是像1楼说的那样,不以应用场景谈语言的都是耍流氓。
如果说,你简单的一个ping,你会用Python来实现?
你说是吧。所以,这三者,不存在谁替代谁,你觉得那个用着更舒服就用那个。这才是人森苦短,我用Python的精髓。
package mainimport (
"fmt"
"os/exec"
)
func main() {
cmd := exec.Command("/bin/sh", "./exec.sh")
bytes, err := cmd.Output()
if err != nil {
fmt.Println("cmd.Output: ", err)
return
}
fmt.Println(string(bytes))
}