Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I am creating a shell script that should do some local settings and echo the IP of the machine in a text file. The reason I need to do this is to get the IP in a PHP script and use it from there as root for a site.

I can get the IP using ifconfig but I need to strip the useless information. I'd like to do this in the shell script not in the PHP file.

The OS is CentOS 5.5, I need the IP of eth0.

share|improve this question
add comment

2 Answers

up vote 2 down vote accepted

Well ip -4 -o addr show dev eth0 will get you a reasonably nice one line output showing the address but it will need some parsing to extract the address. Something like this should work:

ip -4 -o addr show dev eth0 | awk '{ gsub(/\/[0-9]+$/, "", $4); print $4 }'
share|improve this answer
add comment

I personally will break the tie between the shell script and the php script to avoid both tightly coupled. If it is the servers IP address you want then, fire your script separately and obtain the servers IP programmatically. You can do this as instructed here. This way you only have logical dependence on the shell script.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.