我有file.txt
它看起来像这样:
C00010018;1;17/10/2013;17:00;18;920;113;NONE
C00010019;1;18/10/2013;17:00;18;920;0;NONE
C00010020;1;19/10/2013;19:00;18;920;0;NONE
我正在尝试做两件事:
- 选择具有
$id_play
作为第二个字段的行。 - 在这些行上替换
;
为。-
我的尝试:
#!/usr/bin/perl
$id_play=3;
$input="./file.txt";
$result = `sed s@^\([^;]*\);$id_play;\([^;]*\);\([^;]*\);\([^;]*\);\([^;]*\);\([^;]*\)\$@\1-$id_play-\2-\3-\4-\5-\6@g $input`;
我收到了这个错误:
sh: 1: Syntax error: "(" unexpected
为什么?