2.4.5用于操作历史的命令

Octave通常会跟踪您输入的命令,以便您可以调用前一个命令来编辑或再次执行它们。当您退出时,您输入的最新命令,最多为变量指定的数字history_size,保存在一个文件中。当Octave启动时,它会从变量命名的文件中加载一个初始命令列表history_file.

以下是用于简单浏览和搜索历史列表的命令。

LFD
RET

无论光标在这里的,都接受当前行。如果该行不为空,请将其添加到历史记录列表中。如果这条线是一条历史线,那么将历史线恢复到其原始状态。

C-p

在历史记录列表中向上移动。

C-n

在历史记录列表中向下移动。

M

移动到历史记录的第一行。

M

移动到输入历史记录的末尾,即您正在输入的行!

C-反应器

从当前行开始向后搜索,并根据需要在历史记录中向上移动。这是一个增量搜索。

C-

从当前行开始向前搜索,并根据需要在历史记录中“向下”移动。

在大多数终端上,也可以使用向上和向下箭头键来代替C-pC-n以在历史记录列表中移动。

除了在历史列表中移动的键盘命令外,Octave还提供了三个函数,用于查看、编辑和重新运行历史列表中的命令块。

 
: history
: history opt1
: H = history ()
: H = history (opt1, …)

如果在没有自变量的情况下调用,历史显示您已执行的命令列表。

有效参数包括:

n
-n

仅显示最近的n历史的脉络。

c

清除历史记录列表。

q

不要对显示的历史行进行编号。这对于使用X窗口系统剪切和粘贴命令非常有用。

r文件

读取文件文件,将其内容附加到当前历史记录列表中。如果省略了名称,则使用默认的历史文件(通常~/.octave_hist).

w文件

将当前历史记录写入文件文件。如果名称已被允许,则使用默认的历史文件(通常~/.octave_hist).

例如,要在不显示行号的情况下显示输入的五个最新命令,请使用以下命令历史-q5.

如果使用单个输出参数调用,则历史记录将作为数组字符串保存到该参数中,并且不会输出到屏幕。

详见: 编辑历史, 运行历史(_H).

 
: edit_history
: edit_history cmd_number
: edit_history first last

使用变量命名的编辑器编辑历史记录列表编辑器.

要编辑的命令首先被复制到一个临时文件中。退出编辑器时,Octave将执行保留在文件中的命令。它通常使用起来更方便编辑历史定义函数,而不是尝试直接在命令行上输入它们。一旦您退出编辑器,就会立即执行命令块。为了避免执行任何命令,只需在离开编辑器之前从缓冲区中删除所有行即可。

当在没有参数的情况下调用时,请编辑先前执行的命令;使用一个参数,编辑指定的命令cmd_number;使用两个参数,编辑之间的命令列表第一最后的。命令号值也可能是负数,其中-1表示最近执行的命令。以下内容相当于并编辑最近执行的命令。

编辑历史编辑历史-1

使用范围时,为第一个命令指定比上一个命令大的数字会在将命令放入要编辑的缓冲区时反转命令列表。

详见: 运行历史(_H), 历史.

 
: run_history
: run_history cmd_number
: run_history first last

从历史记录列表中运行命令。

当在没有参数的情况下调用时,运行先前执行的命令;

使用一个参数,运行指定的命令cmd_number;

使用两个参数,在之间运行命令列表第一最后的。命令号值也可能是负数,其中-1表示最近执行的命令。例如,命令

运行历史或运行历史-1

再次执行最近的命令。命令

运行历史13 169

执行命令13到169。

为第一个命令指定比最后一个命令大的数字会在执行命令之前反转命令列表。例如

disp(1)disp(2)运行历史-1-2⇒ 2 1

详见: 编辑历史, 历史.

Octave还允许您自定义历史记录保存的时间、位置和方式的详细信息。

 
: val = history_save ()
: old_val = history_save (new_val)
: old_val = history_save (new_val, "local")

查询或设置内部变量,该变量控制在命令行中输入的命令是否保存在历史文件中。

当从具有的函数内部调用时地方的参数,则该变量会为函数及其调用的任何子程序在本地进行更改。退出函数时将恢复原始变量值。

详见: 历史_控制, history_file, history_size, history_timestamp_format_string.

 
: val = history_control ()
: old_val = history_control (new_val)

查询或设置用于指定如何将命令保存到历史记录列表的内部变量。

默认值是一个空字符串,但可能会被环境变量覆盖Octave列表控制.

的值历史_控制是一个以冒号分隔的值列表,用于控制命令在历史记录列表中的保存方式。如果值列表包括忽略空间,以空格字符开头的行不会保存在历史记录列表中。的值忽略导致与前一个历史记录条目匹配的行不被保存。的值无知是的简写忽略空间忽略。值为擦除重复数据导致在保存当前行之前,将与该行匹配的所有先前行从历史记录列表中删除。任何不在上述列表中的值都将被忽略。如果历史_控制是空字符串,所有命令都保存在历史记录列表中,以的值为准history_save.

详见: history_file, history_size, history_timestamp_format_string, history_save.

 
: val = history_file ()
: old_val = history_file (new_val)

查询或设置内部变量,该变量指定用于存储命令历史记录的文件的名称。

在当前Octave会话期间发出的所有未来命令都将写入该新文件(如果history_save允许这样)。

默认值为$DATA/Octave/历史这里的$DATA是(漫游)用户数据文件的平台特定位置(例如。,$XDG_DATA_HOME或者如果没有设置,~/.local/share在类Unix操作系统上或%APPDATA%在Windows上)。默认值可能被环境变量覆盖OCTAVE_HISTFILE.

编程说明:

如果要永久更改Octave历史文件的位置,则需要发出history_file命令。这可以通过使用Octave.Octave启动文件。

如果您还想从这个不同的历史文件中读取过去Octave会话的已保存历史命令,则需要使用其他命令历史-r在设置历史文件的新值之后。Octave启动文件中的示例代码可能如下所示:

history_file(“~/new/.octave_hist”);if(exist(history_file()))history(“-r”,history_file());endif

详见: 历史, 历史_控制, history_save, history_size, history_timestamp_format_string.

 
: val = history_size ()
: old_val = history_size (new_val)

查询或设置内部变量,该变量指定要在历史文件中存储的条目数。

默认值为1000,但可能被环境变量覆盖Octave列表size.

详见: history_file, history_timestamp_format_string, history_save.

 
: val = history_timestamp_format_string ()
: old_val = history_timestamp_format_string (new_val)
: old_val = history_timestamp_format_string (new_val, "local")

查询或设置内部变量,该变量指定Octave退出时写入历史文件的注释行的格式字符串。

格式字符串被传递到strftime。默认值为

#Octave版本,%a%b%d%H:%M:%S%Y%Z<USER@HOST>

当从具有的函数内部调用时地方的参数,则该变量会为函数及其调用的任何子程序在本地进行更改。退出函数时将恢复原始变量值。

详见: strftime, history_file, history_size, history_save.

 
: val = EDITOR ()
: old_val = EDITOR (new_val)
: old_val = EDITOR (new_val, "local")

查询或设置指定默认文本编辑器的内部变量。

默认值取自环境变量编辑器当Octave启动时。如果环境变量没有被初始化,编辑器将设置为emacs.

当从具有的函数内部调用时地方的参数,则该变量会为函数及其调用的任何子程序在本地进行更改。退出函数时将恢复原始变量值。

详见: 编辑, 编辑历史.


版权所有 © 2024 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号