如何使用sed

时间:2015-06-25 03:20:45

标签: bash shell sed

我在sed中使用bash shell script。我想使用sed在每行的第一位添加一些文本,定义为shell变量。

例如,

cat filename
1.cfg
2.cfg
...
100.cfg

在剧本中,

#!/bin/bash
currentd="/home/test/"
sed "/WHAT SHOUL I DO to add $currentd/" filename > filepath

我想在currentd中的每一行的第一位添加文件路径filename并获取filepath文件。

2 个答案:

答案 0 :(得分:3)

sed "s|^|$currentd|" filename > filepath

这会将每行(^)的开头“替换”为$currentd。这要求$currentd不包含任何管道(|)。

答案 1 :(得分:1)

您也可以使用awk执行此操作,因为:

awk -v c=$currentd '{print c $0}' filename > filepath

-v用于将awk变量c设置为bash变量currentd