django - 如何使用 bash shell 查找计算机的 IP 地址?

标签 django bash unix networking ip-address

有时,我需要启动 Django 开发服务器,并让我网络上的其他机器可以查看它,如下所述:

http://docs.djangoproject.com/en/dev/ref/django-admin/#runserver

我的机器的 IP 地址往往会时不时地改变,所以我想要一个小的 shell 别名或者用我机器的当前 IP 地址吐出 manage.py 命令的东西,可能是这样的:

python manage.py runserver $(COMMAND TO FIND MY MACHINE’S IP ADDRESS GOES HERE):8000

最佳答案

ifconfig en0 | grep inet | grep -v inet6

上面的输出应该是下面的形式:

inet 192.168.111.1 网络掩码 0xffffff00 广播 192.168.111.255

添加一个 awk 语句来打印第二列以避免使用 cut(awk 是一个非常标准的 unix 工具):

ifconfig en0 | grep inet | grep -v inet6 | awk '{print $2}'

我在 LAN 上使用以下方法获取当前 IP,其中 IP 的前几个数字始终相同(用您自己的数字替换 192.168.111):

ifconfig | grep 192.168.111 | awk '{print $2}'

要获取您知道其名称的另一台机器的 ip,请尝试(将主机名和 192.168.111 替换为您自己的值):

ping -c 1 hostname | grep 192.168.11 | grep 'bytes from' | awk '{print $4}' | sed 's/://g'

关于django - 如何使用 bash shell 查找计算机的 IP 地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/845694/

相关文章:

python - Django 表单 : what is the best way to modify posted data before validating?

linux - 寻找一种监视文件、运行脚本和刷新浏览器的简单方法

linux - 在 UNIX 中运行 .exe 文件

unix - 在 SAP ABAP 中创建文件时如何设置(unix)权限?

c - 用C语言获取Linux上的程序进程(服务和守护进程)

python - Pycharm 无法识别 shell 可以识别的包。 Django

带有 CSRF/CORS 的带有 TokenAuthentication 问题的 Django REST 框架

javascript - Django/Javascript 交互中 POST 无响应

linux - bash 和 ash 括号的区别

bash/bin/grep : Argument list too long (using --file option)