我正在尝试使用 Ruby one liner 从文本文件中删除一些双引号 (") 字符,但收效甚微。
我尝试了以下方法和一些变体,但没有成功。
ruby -pe 'gsub(/\"/,"")' < myfile.txt
这给了我以下错误:
-e:1: Invalid argument - < (Errno::EINVAL)
我在 Win 机器上运行 Ruby:
ruby 1.8.6(2007-09-24 补丁级别 111)[i386-mswin32]
有什么想法吗?
最佳答案
看起来像 cmd 引用 hell - 请注意,单引号在 cmd shell 中毫无意义。
ruby -pe "gsub(34.chr,'')" < filename
但这可能更好:
ruby -pe "$_.delete!(34.chr)" < filename
关于Ruby:如何在正则表达式中匹配双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1520170/