私の要件は、パターンを持つ必要があるファイル内の行を検索し、行末に@$SQL_DIR
文字列を追加することです。$IDSS_LA_SCHEMA
誰でも私を助けることができます.. ??
よろしく、ラジェッシュ
awk を使用し、awk '/PATTERN/ {print $0, "STRING"}' /path/to/your/file
多分このように:
sed '/@\$SQL_DIR/ s/$/\$IDSS_LA_SCHEMA/'
私が試みたのは、指定した文字列を含む一致行であり、それらのそれぞれについて、末尾を 2 番目の文字列に置き換えます。
> cat temp
ngkerng
egerger
erger
ghethe @$SQL_DIRand
jgnv
erger
>
下記参照:
> perl -pi -e 'if(/\@\$SQL_DIRand/){$_=~s/$/\$IDSS_LA_SCHEMA/;}' temp
>cat temp
ngkerng
egerger
erger
ghethe @$SQL_DIRand$IDSS_LA_SCHEMA
jgnv
erger
>
注:これにより、インプレース追加が行われます。
$ cat myfile.txt
some line
some other line, with @$SQL_DIR in it
$ sed -i 's/^\(.*@$SQL_DIR.*\)/\1$IDSS_LA_SCHEMA/' myfile.txt
$ cat myfile.txt
some line
some other line, with @$SQL_DIR in it$IDSS_LA_SCHEMA