击IP IF THEN ELSE语句 [英] Bash IP IF THEN ELSE Statement
问题描述
我要运行几台机器一个脚本,但每台机器需要将要执行的命令的独特
我认为,一个bash脚本将能够做到这一点,但我不是在这个部门太精明。
在code我需要将类似于以下code(或将它)。我知道,这是远远不够完善或功能,但它确实存在只是为了帮助前preSS我所期待的。
可能有人请帮我这个脚本?
#/斌/庆典
IP = ifconfig eth0命令| grep的INET | grep的-v INET6 |切-c 7-17如果[$ IP -eq 192.168.32.1]
随后的mkdir IPFolder-1
更多code ...
其他
如果[$ IP -eq 192.168.32.2]
随后的mkdir IPFolder-2
更多code ...
其他
如果[$ IP -eq 192.168.32.5]
随后的mkdir IPFolder-5
更多code ...
使用双括号,空格是很重要的:
IP = $(ifconfig eth0命令| grep的INET | grep的-v INET6 |切-c 21-34)
如果[[$ IP = 192.168.32.1]];然后
MKDIR IPFolder-1
ELIF [$ IP = 192.168.32.2]];然后
MKDIR IPFolder-2
科幻
请注意:在Ubuntu 11.10,我只好用切割-c 21-34,适应必要
。I need to run one script from several machines but each machine requires unique commands to be executed.
I thought that a bash script would be able to do this but I'm not too savvy in this department.
The code I require would look similar to the below code (or would it). I know that it's far from perfect or functional but it's really there just to help to express what I am looking for.
Could somebody please help me with this script?
#/bin/bash
IP= ifconfig eth0 | grep inet | grep -v inet6 | cut -c 7-17
If [$IP -eq 192.168.32.1]
then mkdir IPFolder-1
more code...
else
if [$IP -eq 192.168.32.2]
then mkdir IPFolder-2
more code...
else
if [$IP -eq 192.168.32.5]
then mkdir IPFolder-5
more code...
use double brackets, spaces are important:
IP=$(ifconfig eth0 | grep inet | grep -v inet6 | cut -c 21-34)
if [[ $IP = 192.168.32.1 ]]; then
mkdir IPFolder-1
elif [[ $IP = 192.168.32.2 ]]; then
mkdir IPFolder-2
fi
Note: on Ubuntu 11.10, I had to use cut -c 21-34, adapt as necessary.
这篇关于击IP IF THEN ELSE语句的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!