"history -p" 有什么作用?
What does "history -p" does?
我正在编写一个 shell 作为学校项目。
在内置函数中有一个 "history" 命令和一些选项,例如用于清理的“-c”或用于在历史记录中添加参数的“-s”。
其中一个选项是“-p”,那个人说:
-p Perform history substitution on the args and display the result
on the standard output, without storing the results in the history list.
我真的不明白这个选项是做什么的。当我尝试它时,它显示 args 并且什么都不做。
有人知道吗?
-p Perform history substitution on the args and display the result on the standard output, without storing the results in the history list.
这是一个例子,它说明了它的实际作用
# clear history
$ history -c
# call date - this will be saved in history
$ date
Tue Oct 3 23:47:24 IST 2017
# call call - this also will be saved in history
$ cal
October 2017
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
# see what all saved so far
$ history
996 date
997 cal
998 history
# see this prints string on stdout, but doesn't save in history
$ history -p "This is test string which is not stored in history"
This is test string which is not stored in history
# as you can see history -p "....." is missing
$ history
996 date
997 cal
998 history
我正在编写一个 shell 作为学校项目。 在内置函数中有一个 "history" 命令和一些选项,例如用于清理的“-c”或用于在历史记录中添加参数的“-s”。 其中一个选项是“-p”,那个人说:
-p Perform history substitution on the args and display the result on the standard output, without storing the results in the history list.
我真的不明白这个选项是做什么的。当我尝试它时,它显示 args 并且什么都不做。
有人知道吗?
-p Perform history substitution on the args and display the result on the standard output, without storing the results in the history list.
这是一个例子,它说明了它的实际作用
# clear history
$ history -c
# call date - this will be saved in history
$ date
Tue Oct 3 23:47:24 IST 2017
# call call - this also will be saved in history
$ cal
October 2017
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
# see what all saved so far
$ history
996 date
997 cal
998 history
# see this prints string on stdout, but doesn't save in history
$ history -p "This is test string which is not stored in history"
This is test string which is not stored in history
# as you can see history -p "....." is missing
$ history
996 date
997 cal
998 history