0
我想將塊大小轉換爲MB。我在替換中使用/e
選項。當我在替換部分添加起始MB時,它會給我錯誤。爲什麼我的Perl單行報告「Bareword發現操作員期望的位置」?
例如:
這是有效的。
echo "16777216 SELECT" |perl -lane 's#(\d+)(\s+SELECT)#$1/(1024*1024*2)#e; print'
8
這給了我錯誤。
echo "16777216 SELECT" |perl -lane 's#(\d+)(\s+SELECT)#$1/(1024*1024*2) MB $2#e; print'
Bareword found where operator expected at -e line 1, near ") MB"
(Missing operator before MB?)
syntax error at -e line 1, near ") MB "
Execution of -e aborted due to compilation errors.
任何幫助修復第二個?
/e修飾符期望替換爲有效的可編譯代碼。 – 2010-10-13 13:25:29
@davorg:即將改變這種情況。 – codaddict 2010-10-13 13:26:03