awk或者sed 替换文件的内容
代码如下问一下怎么把命令行的参数传进去把文本内容改变为自己输入的值#!/bin/bashtouchcardfileread-p"pleaseinputthehostnam...
代码如下 问一下 怎么把命令行的参数 传进去 把文本内容改变为自己输入的值
#! /bin/bash
touch cardfile
read -p "please input the host name" $NAME
ipmitool -I open picmg addrinfo >cardfile
sss=` cat /cardfile | grep "Hardware Address" | awk '{print $2}'`
if [ $sss = " 0x01"]
then
cd /etc/sysconfig
sed -i 's/^HOSTNAME/HOSTNAME=$NAME/g' network
fi 展开
#! /bin/bash
touch cardfile
read -p "please input the host name" $NAME
ipmitool -I open picmg addrinfo >cardfile
sss=` cat /cardfile | grep "Hardware Address" | awk '{print $2}'`
if [ $sss = " 0x01"]
then
cd /etc/sysconfig
sed -i 's/^HOSTNAME/HOSTNAME=$NAME/g' network
fi 展开
1个回答
展开全部
sed 里如果用变量,使用双引号
sed -i "s/^HOSTNAME/HOSTNAME=$NAME/g" network
或者隔离出来
sed -i 's/^HOSTNAME/HOSTNAME='$NAME'/g' network
sed -i "s/^HOSTNAME/HOSTNAME=$NAME/g" network
或者隔离出来
sed -i 's/^HOSTNAME/HOSTNAME='$NAME'/g' network
追问
sed -i "s//HOSTNAME=$NAME/g" network
我这个里面 被替换的部分怎么用正则表达式写出来
比如说 sed -i "s/HOSTNAME=krystal/HOSTNAME=$NAME/g" network
要替换的是HOSTNAME=krystal 怎么用正则表达式写出来
/^HOSTNAME/这么写不对啊
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询