---
name: "FusionInventory::Agent::Tools"
section: "3pm"
platform: "linux"
package: "fusioninventory-agent"
version: "2.2.3-8"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/FusionInventory::Agent::Tools"
---

# FusionInventory::Agent::Tools(3pm)

OS-independant generic functions

## NAME

FusionInventory::Agent::Tools - OS-independant generic functions

## DESCRIPTION

This module provides some OS-independant generic functions.

## FUNCTIONS

### getFormatedLocalTime($time)

Returns a formated date from given Unix timestamp.

### getFormatedGmTime($time)

Returns a formated date from given Unix timestamp.

### getFormatedDate($year, $month, $day, $hour, $min, $sec)

Returns a formated date from given date elements.

### getCanonicalManufacturer($manufacturer)

Returns a normalized manufacturer value for given one.

### getCanonicalSpeed($speed)

Returns a normalized speed value (in Mhz) for given one.

### getCanonicalSize($size)

Returns a normalized size value (in Mb) for given one.

### getSanitizedString($string)

Returns the input stripped from any control character, properly encoded in UTF-8.

### compareVersion($major, $minor, $min\_major, $min\_minor)

Returns true if software with given major and minor version meet minimal version requirements.

### getDirectoryHandle(%params)

Returns an open file handle on either a command output, or a file.

- logger a logger object

  - directory the directory to use

  ### getFileHandle(%params)

Returns an open file handle on either a command output, a file, or a string.

- logger a logger object

  - command the command to use

  - file the file to use, as an alternative to the command

  - string the string to use, as an alternative to the command

  ### getFirstLine(%params)

Returns the first line of given command output or given file content, with end of line removed.

- logger a logger object

  - command the exact command to use

  - file the file to use, as an alternative to the command

  ### getAllLines(%params)

Returns all the lines of given command output or given file content, with end of line removed.

- logger a logger object

  - command the exact command to use

  - file the file to use, as an alternative to the command

  ### getFirstMatch(%params)

Returns the result of applying given pattern on the first matching line of given command output or given file content.

- pattern a regexp

  - logger a logger object

  - command the exact command to use

  - file the file to use, as an alternative to the command

  ### getLastLine(%params)

Returns the last line of given command output or given file content.

- logger a logger object

  - command the exact command to use

  - file the file to use, as an alternative to the command

  ### getLinesCount(%params)

Returns the number of lines of given command output or given file content.

- logger a logger object

  - command the exact command to use

  - file the file to use, as an alternative to the command

  ### canRun($binary)

Returns true if given binary can be executed.

### canRead($file)

Returns true if given file can be read.

### canLoad($module)

Returns true if given perl module can be loaded (and actually loads it).

### hex2char($value)

Returns the value converted to a character if it starts with hexadecimal prefix, the unconverted value otherwise. Eg. 0x41 -\> A, 41 -\> 41.

### hex2dec($value)

Returns the value converted to a decimal if it starts with hexadecimal prefix, the unconverted value otherwise. Eg. 0x41 -\> 65, 41 -\> 41.

### dec2hex($value)

Returns the value converted to an hexadecimal if it doesn't start with hexadecimal prefix, the unconverted value otherwise. Eg. 65 -\> 0x41, 0x41 -\> 0x41.

### any BLOCK LIST

Returns a true value if any item in LIST meets the criterion given through BLOCK.

### all BLOCK LIST

Returns a true value if all items in LIST meet the criterion given through BLOCK.

### none BLOCK LIST

Returns a true value if no item in LIST meets the criterion given through BLOCK.

### uniq BLOCK LIST

Returns a new list by stripping duplicate values in LIST.

### file2module($string)

Converts a perl file name to a perl module name (Foo/Bar.pm -\> Foo::Bar)

### module2file($string)

Converts a perl module name to a perl file name ( Foo::Bar -\> Foo/Bar.pm)

### runFunction(%params)

Run a function whose name is computed at runtime and return its result.

- logger a logger object

  - module the function namespace

  - function the function name

  - timeout timeout for function execution

  - load enforce module loading first

  ### delay($second)

Wait for `$second`. It uses *sleep()* or *Win32::Sleep()* depending on the Operating System.
