導航:首頁 > 編程系統 > linux腳本修改ip地址

linux腳本修改ip地址

發布時間:2023-02-14 07:46:46

linux中想在腳本中實現修改一個ip地址參數的配置文件,用sed命令如何實現

sed -i 's/\(IP=\)\S\S*/\1102.117.2.23/' filename

註:
1)將不變的部分放入帶反斜杠的一對括弧 \( \) 中並在替換時用 \1 引用。
2)\S用於匹配除單個空格符之外的所有字元。

awk -F"=" '{if($1=="IP")print("IP=102.117.2.23")}' filename > filename.new 2>/dev/null

Ⅱ Linux shell腳本編程——IP地址設置

#!/bin/bash

################################變數定義################################

nameDevice=eth0

ipAdddress=192.168.4.110

prefix=255.255.255.0

netMask=255.255.255.0

gateway=192.168.4.1

dns1=8.8.8.8

dns2=192.168.4.0

################################函數模塊################################

##設置NetworkManager服務

function SetNetworkManagerDisable(){

  systemctl stop NetworkManager && systemctl disable NetworkManager && echo "NetworkManager is stop and disable" && return 0 || return 1

}

##設置NetworkManager服務

function SetNetworkEnable(){

  systemctl restart network && systemctl enable network && echo "network is start and enable" && return 0 || return 1

}

##查看伺服器第一個網卡名稱

function FindFirstNICName(){

  ifconfig|head -n 1|cut -d \: -f 1 && [ $? == 0 ] && nameDevice=`ifconfig|head -n 1|cut -d \: -f 1` && return 0 || return 1

}

##設置伺服器網卡IP地址

function SetNICFile(){

  cat > /etc/sysconfig/network-scripts/ifcfg-$nameDevice <<EOF

TYPE="Ethernet"

BOOTPROTO="none"

DEFROUTE=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

NAME=$nameDevice

DEVICE=$nameDevice

ONBOOT=yes

IPADDR=$ipAdddress

PREFIX=$prefix

NETMASK=$netMask

GATEWAY=$gateway

DNS1=$dns1

DNS2=$dns2

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

IPV6_PRIVACY=no

EOF

}

##消除變數

function UnsetVariate(){

  unset nameDevice

  unset ipAdddress

  unset prefix

  unset netMask

  unset gateway

  unset dns1

  unset dns2

}

################################程序流程################################

##設置網路服務為network

FindFirstNICName

SetNICFile

SetNetworkEnable

SetNetworkManagerDisable

UnsetVariate

Ⅲ 【Linux】在shell腳本中獲取當前主機的主機名以及IP地址

在命令行模式下,獲取當前主機名稱:

在命令行模式下,獲取IP地址:

在shell腳本中獲取當前主機的主機名以及IP地址:

說明:
`` 表示執行該語句,並返回執行後的結果;
grep -A1 "eth0" 表示找出帶有「eth0」的行,輸出中除顯示該行外,還顯示之後的一行;
awk 則是進行分割。

Ⅳ 關於一個設置ip地址的linux腳本

你那個if [ $?==1 ]有問題,shell里是沒有==這種符號的,要麼用-eq,要麼用=,且=作判斷時兩邊都需空格,否則視為賦值。所以改為 if [ $? = 1 ]或if [ $? -eq 1 ],你試試。

閱讀全文

與linux腳本修改ip地址相關的資料

熱點內容
雜志版本號是什麼意思 瀏覽:223
地圖特效代碼 瀏覽:192
去除思科配置文件中的號 瀏覽:196
運行的16位程序太多 瀏覽:1
蘋果mac用什麼軟體好學編程 瀏覽:681
ai中線段怎麼添加寬度配置文件 瀏覽:956
lol文件怎麼找不到game 瀏覽:142
aecc視頻教程 瀏覽:983
linux怎麼查看資料庫用戶名 瀏覽:182
cefs文件系統 瀏覽:404
學平面設計個編程哪個好 瀏覽:701
如何把編程文件轉為hex 瀏覽:80
清除蘋果地圖來自地址 瀏覽:233
已經打開的文件如何清理 瀏覽:685
視頻網站有什麼用 瀏覽:70
多個表格文件怎樣壓縮文件 瀏覽:729
cad文件大很卡如何解決 瀏覽:633
將java程序打包成apk 瀏覽:277
2021唱吧文件找不到了 瀏覽:463
華為p9手機文件管理 瀏覽:284

友情鏈接