Skip to content
This repository has been archived by the owner on Apr 3, 2018. It is now read-only.
funilrys edited this page Sep 17, 2017 · 2 revisions

a The repository is delivered with two different scripts: funceble and tool.

The first is the main script and the second one is a kind of helper which help you install funceble with the default value you want.

Funceble

Note: Some of the following arguments are only available from Funceble >= 1.4.0 which, at the time we write this represent the dev branch.

Usage: ./funceble [ -OPTION1 | --OPTION1 ] [ -OPTION2 | --OPTION2 ] [...]

       {[ -d domain-name.me ]} || {[ -f listOfDomainInAFile ]}

  --all                      -a              Output all information on screen (Must be before -d or -f)
  --cmd-before-end                           Pass a command before the results (final) commit of travis mode (Must be before -d or -f)
  --continue                 -c              Switch the default value of the auto continue mode to its opposite. Current value: true (Must be before -d or -f)
  --domain                   -d              Domain to analyze
  --debug                                    Switch the default value of the debug mode to its opposite. Current value: false (Must be before -d or -f)
  --file                     -f              File with a list of domains
  --execution                -ex             Show the execution time (Must be before -d or -f)
  --help                                     Print this screen
  --host                     -h              Activate the generation of hosts file (Must be before -d or -f)
  --http                                     Switch the default value of the usage of HTTP code. Current value: true (Must be before -d or -f)
                             -ip             Change the ip to print in host file. Current value: 0.0.0.0 (Must be before -d or -f)
  --less                                     Output less information on screen (Must be before -d or -f)
  --noFiles                  -n              Deactivate the production of output files (Must be before -d or -f)
  --noLogs                   -nl             Deactivate the production of logs files in case we encounter some errors (Must be before -d or -f)
  --noUnified                -nu             Deactivate the production of result.txt as unified result under the output directory (Must be before -d or -f)
  --percentage               -p              Switch the default value of the percentage output mode to its opposite. Current value: true (Must be before -d or -f)
  --plain                                    Switch the default value of the generation of the plain list of domain to its opposite. Current value: false (Must be before -d or -f)
  --quiet                    -q              Activate quiet mode (Must be before -d or -f)
  --split                                    Split output files (Must be before -d or -f)
  --timeout                  -t              Seconds before timeout. Current value: 1s (Must be before -d or -f)
  --travis                                   Activate the travis mode (Must be before -d or -f)
  --version                  -v              Show the current version of Funceble

Details

--domain|--domain=xyz.abc|-d

Domain to analyze

This is the first way to test a domain. If we want to test for example google.com we execute and get the following.

$ ./funceble -d google.com

Domain                                                                                               Status      Expiration Date   Source     HTTP Code
---------------------------------------------------------------------------------------------------- ----------- ----------------- ---------- ----------
google.com                                                                                           ACTIVE      14-sep-2020       WHOIS      302       

Status      Percentage   Numbers     
----------- ------------ -------------
ACTIVE      100%         1           
INACTIVE    0%           0           
INVALID     0%           0

--file|--file=|-f

File with a list of domains

This argument read a given path and test all domain into the given file.

$ ./funceble -f listOfDomainsToTestForWiki

Domain                                                                                               Status      Expiration Date   Source     HTTP Code
---------------------------------------------------------------------------------------------------- ----------- ----------------- ---------- ----------
google.com                                                                                           ACTIVE      14-sep-2020       WHOIS      302       
twitter.com                                                                                          ACTIVE      21-jan-2020       WHOIS      301       
facebook.com                                                                                         ACTIVE      30-mar-2025       WHOIS      301       
github.com                                                                                           ACTIVE      09-oct-2020       WHOIS      301       
instagram.com                                                                                        ACTIVE      04-jun-2022       WHOIS      301       
hello.ge                                                                                             INACTIVE    Unknown           NSLOOKUP   Unknown   
test.hyjhf                                                                                           INVALID     Unknown           IANA       000       

Status      Percentage   Numbers     
----------- ------------ -------------
ACTIVE      71%          5           
INACTIVE    14%          1           
INVALID     14%          1

Tool

Usage: ./tool [ -OPTION1 | --OPTION1 ] [ -OPTION2 | --OPTION2 ] [...]

       {[ -i|--installation ]} || {[ -p|--production ]} || {[ -u|--update ]}
                                      {[ --del ]}

  --autosave-minutes                         Replace the  minimum of minutes before we start commiting to upstream under travis. Current value: 35 (Must be before -u or -i)
  --clean                    -c              Clean all files under output (Must be before -u or -i)
  --commit-autosave-message                  Replace the default autosave commit message. Current value: Funceble Test - Autosave (Must be before -u or -i)
  --commit-results-message                   Replace the default results (final) commit message. Current value: Funceble Test - Results (Must be before -u or -i)
  --del                                      Uninstall funceble and all its components
  --dev                                      Activate the download of the developement version of Funceble. Current value: true (Must be before -u)
  --directory-structure                      Generate the directory and files that are needed and which does not exist in the current directory (Must be before -u or -i)
  --help                                     Print this screen
  --installation             -i              Execute the installation script
  --iana                                     Update 'iana-domains-db'
  --production               -p              Prepare the repository for production
  --stable                                   Activate the download of the stable version of Funceble. Current value: false (Must be before -u)
  --timeout                  -t              Set the default timeout in seconds (Must be before -u or -i)
  --update                   -u              Update the script
  --version                  -v              Show the current version of Funceble

Details

Please note that all arguments/functions with the following mention Must be before -u or -i only works if -u|--update or -i|--installation is called after them

--autosave-minutes

Replace the minimum of minutes before we start commiting to upstream under travis. Current value: 35 (Must be before -u or -i)

This arguments set the default timeout of the script when used under Travis CI.

Note

  • It should be less or equal to 50 minutes.

Usage

The following install Funceble with a the default timeout of 30 minutes.

$ ./tool --autosave-minutes 30 -i
Script exist  ✔
Script readable  ✔
Script executable  ✔

awk installed  ✔
curl installed  ✔
date installed  ✔
echo installed  ✔
expect installed  ✔
nslookup installed  ✔
sed installed  ✔
sha512sum installed  ✔
tail installed  ✔
tr installed  ✔
whois installed  ✔

Installation of working directory  ✔

Update of iana-domains-db  ✔
Creation of non existant files and directories  ✔

The installation was successfully completed!
You can now use the script with './funceble [-OPTIONS]' or learn how to use it with './funceble --help'

--clean|-c

Clean all files under output (Must be before -u or -i)

This argument delete every created files under the output directory.

Note

  • This function is also used by Funceble when calling ./tool -u

Usage

Without --installation|-i or --update|-u
$ ./tool -c
Cleaning generated files  ✔

--commit-message

Replace the default commit message. Current value: Funceble Test - Autosave (Must be before -u or -i)

You want to customize the default commit message when using the Travis autosave?

Then execute the following which gonna install your custom commit message into funceble 😸

Usage

The following install Funceble with the default commit message "My awesome custom commit message" instead of "Funceble Test - Autosave"

$ ./tool --commit-message "My awesome custom commit message" -i
Script exist  ✔
Script readable  ✔
Script executable  ✔

awk installed  ✔
curl installed  ✔
date installed  ✔
echo installed  ✔
expect installed  ✔
head installed  ✔
nslookup installed  ✔
sed installed  ✔
sha512sum installed  ✔
tail installed  ✔
tr installed  ✔
whois installed  ✔

Installation of working directory  ✔

Creation of non existant files and directories  ✔

The installation was successfully completed!
You can now use the script with './funceble [-OPTIONS]' or learn how to use it with './funceble --help'

--commit-results-message

Replace the default results (final) commit message. Current value: Funceble Test - Results (Must be before -u or -i)

You want to customize the default final commit message when using the Travis autosave?

Then execute the following which gonna install your custom final commit message into Funceble 😸

Usage

The following install Funceble with the default commit message "My awesome final commit message" instead of "Funceble Test - Results"

$ ./tool --commit-results-message "My awesome final commit message" -i
Script exist  ✔
Script readable  ✔
Script executable  ✔

awk installed  ✔
curl installed  ✔
date installed  ✔
echo installed  ✔
expect installed  ✔
head installed  ✔
nslookup installed  ✔
sed installed  ✔
sha512sum installed  ✔
tail installed  ✔
tr installed  ✔
whois installed  ✔

Installation of working directory  ✔

Creation of non existant files and directories  ✔

The installation was successfully completed!
You can now use the script with './funceble [-OPTIONS]' or learn how to use it with './funceble --help'

--del

Uninstall funceble and all its components

Want to uninstall funceble ? 😭

We do it for you with the following argument !!

Usage

$ ./tool --del
Do you really want to uninstall everything ? [Y/N] Y
Deletion of funceble  ✔

Thank you for having used Funceble!!

You're not satisfied of Funceble?
Please let me know there: https://git.io/v7kAE

--dev

Activate the download of the developement version of Funceble. Current value: true (Must be before -u)

This argument combined with -u|--update can be used to get the latest development version of Funceble

Usage

The following update to the development version of Funceble

$ ./tool --dev -u

Download of the script  ✔

Checking Version  ✔

The update was successfully completed!

--directory-structure

Deleted the output directory, one of its sub-directory or want to get the right directory structure ?

Generate the directory and files that are needed and which does not exist in the current directory (Must be before -u or -i)

We do it for you with the following argument !!

Note

  • ./tool -i also use this feature

Usage

The following check your current directory structure with the one from upstream.

$ ./tool --directory-structure
Creation of non existant files and directories  ✔

--installation|-i

Changed the location of Funceble?

Just downloaded Funceble?

Want a fresh installation?

Want to check your installation?

Then use this argument which do many things to make Funceble work perfectly!!

Usage

The following install Funceble with the default values.

$ ./tool -i
Script exist  ✔
Script readable  ✔
Script executable  ✔

awk installed  ✔
curl installed  ✔
date installed  ✔
echo installed  ✔
expect installed  ✔
head installed  ✔
nslookup installed  ✔
sed installed  ✔
sha512sum installed  ✔
tail installed  ✔
tr installed  ✔
whois installed  ✔

Installation of working directory  ✔

Creation of non existant files and directories  ✔

The installation was successfully completed!
You can now use the script with './funceble [-OPTIONS]' or learn how to use it with './funceble --help'

--iana

Update 'iana-domains-db'

This argument is used to update the iana-domains-db file.

Usage

The following update the content of iana-domains-db

$ ./tool --iana
Update of iana-domains-db  ✔

--production|-p

Prepare the repository for production

You did some changes and want to send a Pull Request or even better you want to have a full working script before production or release?

This arguement is there to make things easier and simple !!

Usage

The following prepare funceble for production.

$ ./tool --production
Script exist  ✔
Script readable  ✔
Script executable  ✔

awk installed  ✔
curl installed  ✔
date installed  ✔
echo installed  ✔
expect installed  ✔
nslookup installed  ✔
sed installed  ✔
sha512sum installed  ✔
tail installed  ✔
tr installed  ✔
whois installed  ✔

Default timeout: 1 seconds
Installation of default variables for production  ✔

Cleaning generated files  ✔
Update of iana-domains-db  ✔
Generation of dir-structure  ✔

The production logic was successfully completed!
You can now distribute this repository.

--stable

Activate the download of the stable version of Funceble. Current value: false (Must be before -u)

You want to switch from development to stable version ?

This argument is for you !!

Usage

The following update to the stable version of Funceble.

$ ./tool --stable -u

Download of the script  ✔

Checking Version  ✔

The update was successfully completed!

--timeout|-t

Set the default timeout in seconds (Must be before -u or -i)

This argument set the default timeout for internal lookup. Indeed, we apply a timeout for whois,nslookup and httpCode lookup.

Usage

The following change the internal lookup timeout to 30 seconds

$ ./tool -t 30 -i
Script exist  ✔
Script readable  ✔
Script executable  ✔

awk installed  ✔
curl installed  ✔
date installed  ✔
echo installed  ✔
expect installed  ✔
nslookup installed  ✔
sed installed  ✔
sha512sum installed  ✔
tail installed  ✔
tr installed  ✔
whois installed  ✔

Installation of working directory  ✔

Update of iana-domains-db  ✔
Creation of non existant files and directories  ✔

The installation was successfully completed!
You can now use the script with './funceble [-OPTIONS]' or learn how to use it with './funceble --help'

--version|-v

Show the current version of Funceble

What to know the curernt version of tool? This argument is what you need !!

Usage

$ ./tool -v
Current Version: dev-1.4.0+34