---
name: "tctmgr"
section: "1"
platform: "linux"
package: "tokyocabinet-bin"
version: "1.4.48-15.1+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/tctmgr"
---

# tctmgr(1)

the command line utility of the table database API

## NAME

tctmgr - the command line utility of the table database API

## DESCRIPTION

The command \`**tctmgr**' is a utility for test and debugging of the table database API and its applications.  \`*path*' specifies the path of a database file.  \`*bnum*' specifies the number of buckets.  \`*apow*' specifies the power of the alignment.  \`*fpow*' specifies the power of the free block pool.  \`*pkey*' specifies the primary key of a record.  \`*cols*' specifies the names and the values of a record alternately.  \`*name*' specifies the name of a column.  \`*op*' specifies an operator.  \`*expr*' specifies the condition expression.  \`*file*' specifies the input file.

**tctmgr create** \[**-tl**\] \[**-td**\|**-tb**\|**-tt**\|**-tx**\] *path* \[*bnum* \[*apow* \[*fpow*\]\]\]

Create a database file.

**tctmgr inform** \[**-nl**\|**-nb**\] *path*

Print miscellaneous information to the standard output.

**tctmgr put** \[**-nl**\|**-nb**\] \[**-sx**\] \[**-dk**\|**-dc**\|**-dai**\|**-dad**\] *path* *pkey* \[*cols* **...**\]

Store a record.

**tctmgr out** \[**-nl**\|**-nb**\] \[**-sx**\] *path* *pkey*

Remove a record.

**tctmgr get** \[**-nl**\|**-nb**\] \[**-sx**\] \[**-px**\] \[**-pz**\] *path* *pkey*

Print the value of a record.

**tctmgr list** \[**-nl**\|**-nb**\] \[**-m** *num*\] \[**-pv**\] \[**-px**\] \[**-fm** *str*\] *path*

Print the primary keys of all records, separated by line feeds.

**tctmgr search** \[**-nl**\|**-nb**\] \[**-ord** *name* *type*\] \[**-m** *num*\] \[**-sk** *num*\] \[**-kw**\] \[**-pv**\] \[**-px**\] \[**-ph**\] \[**-bt** *num*\] \[**-rm**\] \[**-ms** *type*\] *path* \[*name* *op* *expr* **...**\]

Print records matching conditions, separated by line feeds.

**tctmgr optimize** \[**-tl**\] \[**-td**\|**-tb**\|**-tt**\|**-tx**\] \[**-tz**\] \[**-nl**\|**-nb**\] \[**-df**\] *path* \[*bnum* \[*apow* \[*fpow*\]\]\]

Optimize a database file.

**tctmgr setindex** \[**-nl**\|**-nb**\] \[**-it** *type*\] *path* *name*

Set the index of a column.

**tctmgr importtsv** \[**-nl**\|**-nb**\] \[**-sc**\] *path* \[*file*\]

Store records of TSV in each line of a file.

**tctmgr version**

Print the version information of Tokyo Cabinet.

Options feature the following.

**-tl** : enable the option \`TDBTLARGE'.\
 **-td** : enable the option \`TDBTDEFLATE'.\
 **-tb** : enable the option \`TDBTBZIP'.\
 **-tt** : enable the option \`TDBTTCBS'.\
 **-tx** : enable the option \`TDBTEXCODEC'.\
 **-nl** : enable the option \`TDBNOLCK'.\
 **-nb** : enable the option \`TDBLCKNB'.\
 **-sx** : the input data is evaluated as a hexadecimal data string.\
 **-dk** : use the function \`tctdbputkeep' instead of \`tctdbput'.\
 **-dc** : use the function \`tctdbputcat' instead of \`tctdbput'.\
 **-dai** : use the function \`tctdbaddint' instead of \`tctdbput'.\
 **-dad** : use the function \`tctdbadddouble' instead of \`tctdbput'.\
 **-px** : the output data is converted into a hexadecimal data string.\
 **-pz** : do not append line feed at the end of the output.\
 **-m** *num* : specify the maximum number of the output.\
 **-pv** : print values of records also.\
 **-fm** *str* : specify the prefix of keys.\
 **-ord** *name* *type* : specify the order of the result.\
 **-sk** *num* : specify the number of skipped records.\
 **-kw** : print KWIC string.\
 **-ph** : print hint information also.\
 **-bt** : specify the number of benchmark tests.\
 **-rm** : remove every record in the result.\
 **-ms** *type* : specify the set operation of meta search.\
 **-tz** : enable the option \`UINT8\_MAX'.\
 **-df** : perform defragmentation only.\
 **-it** *type* : specify the index type among "lexical", "decimal", "token", "qgram", and "void".\
 **-cd** : create the number index instead of the string index.\
 **-cv** : remove the existing index.\
 **-sc** : normalize keys as lower cases.\

The operator of the \`search' subcommand is one of "STREQ", "STRINC", "STRBW", "STREW", "STRAND", "STROR", "STROREQ", "STRRX", "NUMEQ", "NUMGT", "NUMGE", "NUMLT", "NUMLE", "NUMBT", "NUMOREQ", "FTSPH", "FTSAND", "FTSOR", and "FTSEX".  If "~" preposes each operator, the logical meaning is reversed.  If "+" preposes each operator, no index is used for the operator.  The type of the \`-ord' option is one of "STRASC", "STRDESC", "NUMASC", and "NUMDESC".  The type of the \`-ms' option is one of "UNION", "ISECT", and "DIFF".  This command returns 0 on success, another on failure.

## SEE ALSO

[**tcttest**(1)](/tcttest/1.md), [**tctmttest**(1)](/tctmttest/1.md), [**tctdb**(3)](/tctdb/3.md), [**tokyocabinet**(3)](/tokyocabinet/3.md)
