【发布时间】:2010-11-12 20:48:04
【问题描述】:
我正在 emacs org-mode 中从 .el 文件中制作一张日出命令命令的表格(想要制作一份备忘单)。列表如下所示:
/, j .......... go to directory
p, n .......... move cursor up/down
M-p, M-n ...... move cursor up/down in passive pane
^, J .......... go to parent directory
...
我想把它做成一个具有这种格式的组织模式表:
| /, j | go to directory |
| p, n | move cursor up/down |
| M-p, M-n | move cursor up/down in passive pane |
| ^, J | go to parent directory |
...
组织会处理间距;我只需要“|命令|解释|”
我无法让 sed 用垂直斜杠替换多个句点。我目前的尝试是这样的:
cat in.org | sed -e 's/[.]*/|/g' > out.org
cat in.org | sed -e 's/[.]/|/g' > out.org
cat in.org | sed -e 's/[.*]/|/g' > out.org
我已经用它来用垂直斜杠替换前导和尾随空格:
sed -e 's/^[ \t]*/|/g;s/[ \t]*$/|/g'|
现在我只需要对一串句点做同样的事情。恐怕我对 sed 的理解不够好,无法让它将句点视为句点(并针对其中的一团),而不是将它们视为通配符。第二个和第三个将每个句点视为一个句点,因为我以一堆垂直斜线结束。
但第一个似乎只是在每个字符之间放置了一个斜杠,所以我不确定它为什么会这样做。似乎它又回到了像通配符一样的行为。
感谢您的帮助。
【问题讨论】:
标签: sed