如何使这个python命令行成为bash中的别名?

时间:2009-03-06 07:27:37

标签: python bash alias

我想在阅读最近在SO上回答的问题后,快速轻松地检查我的IP地址。为了将来参考,有没有办法使以下别名起作用?

alias myip='python -c "from urllib import urlopen; print urlopen("http://whatismyip.appjet.net").read()[:-1]"'

3 个答案:

答案 0 :(得分:7)

alias myip="python -c 'from urllib import urlopen; print urlopen(\"http://whatismyip.appjet.net\").read()[:-1]'"

您需要在别名中使用单引号来阻止bash尝试解释其中的部分代码。在处理别名本身时,双引号上的转义被剥离。

答案 1 :(得分:6)

引用内部双引号:

alias myip='python -c "from urllib import urlopen; print urlopen(\"http://whatismyip.appjet.net\").read()[:-1]"'

答案 2 :(得分:5)

也可以用卷曲来完成:

alias myip='curl "http://whatismyip.appjet.net"'

或使用wget:

alias myip='wget -O - "http://whatismyip.appjet.net" 2>/dev/null'