sh 用于管理/ etc / hosts文件的Bash脚本,用于添加/删除主机名。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh 用于管理/ etc / hosts文件的Bash脚本,用于添加/删除主机名。相关的知识,希望对你有一定的参考价值。

#!/bin/sh

# PATH TO YOUR HOSTS FILE
ETC_HOSTS=/etc/hosts

# DEFAULT IP FOR HOSTNAME
IP="127.0.0.1"

# Hostname to add/remove.
HOSTNAME=$1

function removehost() {
    if [ -n "$(grep $HOSTNAME /etc/hosts)" ]
    then
        echo "$HOSTNAME Found in your $ETC_HOSTS, Removing now...";
        sudo sed -i".bak" "/$HOSTNAME/d" $ETC_HOSTS
    else
        echo "$HOSTNAME was not found in your $ETC_HOSTS";
    fi
}

function addhost() {
    HOSTNAME=$1
    HOSTS_LINE="$IP\t$HOSTNAME"
    if [ -n "$(grep $HOSTNAME /etc/hosts)" ]
        then
            echo "$HOSTNAME already exists : $(grep $HOSTNAME $ETC_HOSTS)"
        else
            echo "Adding $HOSTNAME to your $ETC_HOSTS";
            sudo -- sh -c -e "echo '$HOSTS_LINE' >> /etc/hosts";

            if [ -n "$(grep $HOSTNAME /etc/hosts)" ]
                then
                    echo "$HOSTNAME was added succesfully \n $(grep $HOSTNAME /etc/hosts)";
                else
                    echo "Failed to Add $HOSTNAME, Try again!";
            fi
    fi
}

以上是关于sh 用于管理/ etc / hosts文件的Bash脚本,用于添加/删除主机名。的主要内容,如果未能解决你的问题,请参考以下文章

linux网络管理/etc/hosts文件实现主机名和ip地址映射

Linux命令集锦:ansible命令

sh / etc / hosts manager bash脚本(v1.1) - 添加了导入和导出命令!

Linux中hosts文件在哪

sh 一个小的shell脚本,用于添加和删除hosts文件中的行。最初由Claus Witt创建,http://clauswitt.com/319.html。

sh 一个小的shell脚本,用于添加和删除hosts文件中的行。最初由Claus Witt创建,http://clauswitt.com/319.html。