我如何在Bash中获得历史第78行?
就像我知道我可以做的事情:
history | grep 78 | \
awk '{idex=2; while (idex <= NF) { printf $idex " "; idex++} print }' | \
sed '2!d; s/\s\s[0-9]*.*$//'
我想要解决的问题是:
npm uninstall foo; npm install -g foo
答案 0 :(得分:4)
p
修饰符将打印任何历史记录扩展而不是执行它。
!78:p
答案 1 :(得分:1)
history | sed -n "`78 {s/^ *[0-9]\{1,\}[[:space:]]*\([^ ]\)/\1/p;q;}"
如果您绝对需要sed并使用history命令(例如在行的开头添加“#”以保护字符串的任何操作)或在!78:p
不起作用的ksh中
答案 2 :(得分:0)
要在bash中从历史记录中获取第78行,请运行以下命令:
!78