Odbedit: Difference between revisions

From MidasWiki
Jump to navigation Jump to search
mNo edit summary
(The midas documentation has moved to https://midas.triumf.ca/docs/)
Tag: Replaced
 
(3 intermediate revisions by one other user not shown)
Line 1: Line 1:
{{Pagelinks}}
The midas documentation has moved. See [https://midas.triumf.ca/docs/develop/reference/reference/programs/#odbedit odbedit] in Programs and options and [https://midas.triumf.ca/docs/develop/features/core_system/odb/#odbedit-tool odbedit tool] in ODB: overview for the new documentation about the odbedit program.
 
== Links ==
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
* [[odbedit command list]]
* [[Odbedit examples]]
* [[ODB|Using the ODB]]
* [[mhttpd]] webserver
* [[Online Database|ODB structure]]
</div>
 
== Introduction ==
The MIDAS  <span style="color:darkcyan;">''odbedit''</span>  utility  is primarily an [[Online Database (ODB)]] Editor. It also acts as a run control and has limited run monitoring features, so is an alternative to the web-based run control program [[mhttpd]]. On the other hand, <span style="color:darkcyan;">''mhttpd''</span> is more user-friendly, but has limited editing capability and does not support all of the features of <span style="color:darkcyan;">''odbedit''</span>.  
 
The features of  <span style="color:darkcyan;">''odbedit''</span>  include
 
* create the ODB of the desired size
* edit/list/create/rename/re-order/delete ODB keys
* create (soft)links to ODB keys
* save all or part of the ODB onto disk and reload from a saved file
* start/stop runs
* list and shutdown active clients
* create a c-structure from the ODB
* change a key's access mode (e.g. read-only)
* execute a list of odbedit commands from a file
* connect to corrupted ODB
 
 
<span style="color:darkcyan;">''odbedit''</span> treats the hierarchical online database very much like a file system. Most commands are similar to UNIX file commands,
e.g. ''ls, cd, chmod, ln'' etc. The ''help'' command displays a [[Odbedit command list|short description of all commands]].
 
The <span style="color:darkcyan;">''odbedit''</span>  commands and mode of operation are described fully in the following sections.
 
== Starting odbedit utility ==
 
 
Arguments
    [-h hostname ]    : see [[Common Parameters to MIDAS Utilities #Midas host (hostname)|common parameters]]
    [-e exptname ]    : see  [[Common Parameters to MIDAS Utilities #Midas experiment (exptname)|common parameters]]
    [-c command ]      : Perform a single command. See [[#Using an external command|using an external command]]
    [-c @commandFile ] : Perform commands in sequence found in the commandFile. See [[#Using an external command file|using an external command file]]
    [-s size ]        : Size in bytes (for ODB creation). See [[#Creating the ODB|creating the ODB]].
    [-d ODB Subtree]  : Specify the initial entry ODB path to go to. See [[#Specifying the initial ODB entry path|Specifying the ODB entry path]].
    [-g ]              : Debug
    [-C ]              : Connect to corrupted ODB
    [-R ]              : Reload ODB from .ODB.SHM
Usage
    >odbedit
 
== Command Line Interpreter ==
ODBedit has a simple command line interface with command line editing similar to the UNIX tcsh shell.
The following edit keys are implemented:
 
[Backspace]          Erase the character left from cursor
[Delete/Ctrl-D]      Erase the character under cursor
[Ctrl-W/Ctrl-U]      Erase the current line
[Ctrl-K]            Erase the line from cursor to end
[Left arrow/Ctrl-B]  Move cursor left
[Right arrow/Ctrl-F] Move cursor right
[Home/Ctrl-A]        Move cursor to beginning of line
[End/Ctrl-E]        Move cursor to end of line
[Up arrow/Ctrl-P]    Recall previous command
[Down arrow/Ctrl-N]  Recall next command
[Ctrl-F]            Find most recent command which starts with current line
[Tab/Ctrl-I]        Complete the path. The command ls /Sy <tab> becomes ls /System.
 
 
==== Creating the ODB ====
 
When <span style="color:darkcyan;">''odbedit''</span>  is started for the first time for a Midas [[Common Parameters to MIDAS Utilities #Midas experiment (exptname)|experiment]], if there is no existing ODB for that experiment,
the ODB will be created with the default size of 128KB, unless overruled by the
[[odbedit #Starting odbedit utility |odbedit ''-s <size>'']] argument, e.g.
 
odbedit -s 2049000
 
====  Using an external command ====
 
In the simplest case, a single <span style="color:darkcyan;">''odbedit''</span>  command can be entered on the command line using the ''-c'' argument, e.g.
 
[pol@isdaq01 src]$ odbedit -c start
Starting run #401
Run #401 started
[pol@isdaq01 src]$ odbedit -c stop
Run #401 stopped
 
==== Using an external command file ====
Perform commands in sequence found in the specified commandFile e.g.
[pol@isdaq01 pol]$ odbedit ''-d'' /Equipment/TDC/Settings/ ''-c'' @testfile.com
 
where the file "testfile.com" contains odbedit commands, such as
set testval 4
ls testval
start
This external command feature allows for sophisticated '''shell scripts''' to be created that can '''manipulate the odb'''.
Such scripts can for example
 
*    check ODB parameters prior to beginning of run
*    send run parameters to the electronic logbook
 
Scripts using the external command feature are often used at begin and end of run, see also
[[/Programs/execute on start run]]
 
 
 
====  Specifying the initial ODB entry path ====
 
The <span style="color:darkcyan;">''odbedit''</span>  ''-d'' argument is used in conjunction with the ''-c'' argument to specify the initial path, e.g.
[pol@isdaq01 pol]$ odbedit -d /test -c "set testval 3"
[pol@isdaq01 pol]$ odb
[local:pol:S]/>ls test
testval
 
 
==== Changing the prompt ====
The format of the <span style="color:darkcyan;">''odbedit''</span> prompt can be changed. See
[[/System ODB tree #/System/Prompt|format of the odbedit prompt]].
 
== [[odbedit command list]] ==
Click above link for list of odbedit commands and examples.
 
[[Category:Utilities]]
[[Category:ODB]][[Category:Run control]]

Latest revision as of 22:01, 30 October 2026

The midas documentation has moved. See odbedit in Programs and options and odbedit tool in ODB: overview for the new documentation about the odbedit program.