计算化学公社

 找回密码 Forget password
 注册 Register
Views: 619|回复 Reply: 3
打印 Print 上一主题 Last thread 下一主题 Next thread

[shell脚本] 求助:将文本中的关键词用变量的形式替换

[复制链接 Copy URL]

250

帖子

3

威望

1818

eV
积分
2128

Level 5 (御坂)

请问下各位老师,如何编写Shell脚本将文本文件中的关键词用变量的形式替换。例如:有一个文本文件,名为file.dat,其中内容如下:
  1. text1
  2. text1
  3. text1
  4. name2
复制代码
现将其中的text1全部替换为name2,使用如下脚本test-1.sh:
  1. #!/bin/bash

  2. sed -i "s/text1/name2/g" file.dat
复制代码
如果想将shell脚本中的name2以变量的形式来表示,比如:
  1. var="name2"
复制代码
那么如何通过引用${var}来实现替换的效果?(其实这里的主要问题就是双引号中内容没法转义)

1102

帖子

18

威望

6643

eV
积分
8105

Level 6 (一方通行)

計算化学の社畜

2#
发表于 Post on 2023-3-18 16:04:37 | 只看该作者 Only view this author


这样的效果么?
Stand on the shoulders of giants

99

帖子

0

威望

3305

eV
积分
3404

Level 5 (御坂)

3#
发表于 Post on 2023-3-18 23:55:54 | 只看该作者 Only view this author
  1. #!/bin/bash

  2. var='name2'
  3. sed -i 's/text1/'$var'/g' file.dat
复制代码

评分 Rate

参与人数
Participants 1
eV +5 收起 理由
Reason
wangyueda + 5 谢谢

查看全部评分 View all ratings

「狩りってのは先に焦せった方の負けだ、ハンターも獲物もな」

250

帖子

3

威望

1818

eV
积分
2128

Level 5 (御坂)

4#
 楼主 Author| 发表于 Post on 2023-3-23 20:11:21 | 只看该作者 Only view this author

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2024-11-27 12:34 , Processed in 0.513198 second(s), 25 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list