---
name: "mifluzsearch"
section: "1"
platform: "linux"
package: "mifluz"
version: "0.24.0-9"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/mifluzsearch"
---

# mifluzsearch(1)

search the content of an inverted index.

## NAME

mifluzsearch - search the content of an inverted index.

## SYNOPSIS

```
mifluzsearch -f words [options]
```

## DESCRIPTION

mifluzsearch searches a mifluz index for documents matching a  Alt\*Vista expression (simple syntax). The result of the search is output on the standard output.

## SEARCH SYNTAX

The search syntax uses a + to indicate a mandatory word, a - to indicated a forbiden word and double quotes (") to specify a literal.

## OPTIONS

- **-v**

  Increase verbosity.

- **-M config\_file**

  use  **config\_file** instead of the default configuration file.

- **-B dbfile (default test)**

  use **dbfile** inverted index.

- **-f expr**

  search for documents that match  **expr.**

- **-H**

  print a HTML header before the results so that mifluzsearch can be used as a cgi-bin.

- **-o word**

  return the number of occurencs of  **word** in the inverted index.

- **-c number (default 10)**

  retrieve at most  **number** documents.

- **-d number (default 0)**

  the index of the first retrieved document starts at **number.** The number of documents retrieved after this document depends on the **-c** option. If  **number is higher than the maximum document that matches the query,** it will be rounded to match the last chunk of document.

- **-n**

  only parse the search expression and print it.

- **-P proximity (default 1)**

  words are considered near to each other if they are at a maximum distance of **proximity** words. If the number is negative the word ordering does not matter.

- **-S**

  return at most one match per server.

- **-l key**

  searching will start at this position in the index. The  **key** is the ascii representation of a key.

- **-l key**

  searching will end at this position in the index. The  **key** is the ascii representation of a key.

## CONFIGURATION FILE

- **wordlist\_wordkey\_document**

  - **wordlist\_wordkey\_location**

  - **wordlist\_wordkey\_uniq**

  ## RESULTS

Here is a sample text result:

```
match: <UNDEF>	<UNDEF>	0	5	<UNDEF>	(world the proximity)
match: <UNDEF>	<UNDEF>	0	21	<UNDEF>	(world the proximity)
match: <UNDEF>	<UNDEF>	0	51	<UNDEF>	(world the proximity)
match: <UNDEF>	<UNDEF>	0	81	<UNDEF>	(world the proximity)
count: 100
time: 20
base: 0
words: the an world
```

Here is a sample xml result (provided the -x option was given):

```
<?xml version="1.0" encoding="ISO-8859-1" ?>
<searchresults>
<match><document>0 5 </document><info>world the proximity</info></match>
<match><document>0 21 </document><info>world the proximity</info></match>
<match><document>0 51 </document><info>world the proximity</info></match>
<match><document>0 81 </document><info>world the proximity</info></match>
<count>100</count>
<time>30</time>
<words>
	<verbatim>the an world </verbatim>
	<unaccent>the an world </unaccent>
</words>
<base>0</base>
</searchresults>
```

- **match**

  is the document number that matches, as defined by  **wordlist\_wordkey\_document.**

- **info**

  is a human readable information explaining why the document matched.

- **count**

  is an estimation of the total number of documents that match the query.

- **time**

  is the number of milliseconds that were necessary to process the query.

- **words verbatim**

  is the list of accented words of the query.

- **words unaccent**

  is the list of unaccented words of the query.

- **base**

  is the absolute index of the first document returned in the total number of possible documents. For instance, if mifluzsearch was  called with -d 50 -c 10 to require ten documents after the 50th document, the base will be 50. However, if there are only 35 documents that match the query, the base will be rounded to the 30 and only 5 documents will be returned.

## CGI

Each option may be given in the  **QUERY\_STRING** environment variable so that mifluzsearch can be used as a cgi-bin instead of a line command. The options are processed in the order in which they appear in QUERY\_STRING.

```
QUERY_STRING='v=1&f=a+word&M=/etc/mifluz.conf' mifluzsearch
```

is strictly equivalent to

```
mifluzsearch -v -f 'a word' -M /etc/mifluz.conf
```

## DEBUG

Debugging information interpretation. A cursor is open in the index for every word and they are stored in a list. The list of cursors is always processed in the same order, as a single link list. With -v, each block is an individual action on behalf of the word shown on the first line. The last line of the block is the conclusion of the action described in the block. REDO means the same cursor must be examined again because the conditions have changed. RESTART means we go back to the first cursor in the list because it may not  match the new conditions anymore. NEXT means the cursor and all the cursors before it match the conditions and we may proceed to the next cursor. ATEND means the cursor cannot match the conditions because it is at the end of the index.

## ENVIRONMENT

**QUERY\_STRING** options are extracted from QUERY\_STRING in a CGI like fashion.

**MIFLUZ\_CONFIG** file name of configuration file read by [WordContext(3)](/WordContext/3.md). Defaults to **~/.mifluz.**

## AUTHORS

Loic Dachary loic@gnu.org

The Ht://Dig group http://dev.htdig.org/

## SEE ALSO

[htdb\_dump(1)](/htdb_dump/1.md), [htdb\_stat(1)](/htdb_stat/1.md), [htdb\_load(1)](/htdb_load/1.md), [mifluzdump(1)](/mifluzdump/1.md), [mifluzload(1)](/mifluzload/1.md), [mifluzdict(1)](/mifluzdict/1.md), [WordContext(3)](/WordContext/3.md), [WordList(3)](/WordList/3.md), [WordDict(3)](/WordDict/3.md), [WordListOne(3)](/WordListOne/3.md), [WordKey(3)](/WordKey/3.md), [WordKeyInfo(3)](/WordKeyInfo/3.md), [WordType(3)](/WordType/3.md), [WordDBInfo(3)](/WordDBInfo/3.md), [WordRecordInfo(3)](/WordRecordInfo/3.md), [WordRecord(3)](/WordRecord/3.md), [WordReference(3)](/WordReference/3.md), [WordCursor(3)](/WordCursor/3.md), [WordCursorOne(3)](/WordCursorOne/3.md), [WordMonitor(3)](/WordMonitor/3.md), [Configuration(3)](/Configuration/3.md), [mifluz(3)](/mifluz/3.md)
