GithubHelp home page GithubHelp logo

chacas0 / tempest Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 2.33 MB

TEMPest is a tool (CLI) that helps to handle, manage and act on temporary directories

Home Page: https://ChacaS0.github.io/tempest

License: MIT License

Go 99.41% Shell 0.53% Batchfile 0.07%
cobra tempest viper go golang cli git travis-ci travis linux temporary temp codecov mit-license mit manager files directories

tempest's Introduction

TEMPest

TEMPest is a tool to manage easily temporary folders/files

Build Status codecov Codacy Badge Go Report Card GoDoc apm Donate beta

Index

Installation

From source (Github)

Requirements

  • git
  • go (golang)

Command

First choose if you want to add permanantly GOBIN to your PATH

GOBIN temporarily in PATH
export GOBIN=/bin

or

export GOBIN=/usr/bin

You can also skip this step and then just add a symlink from $GOBIN/tempest to /usr/bin/tempest after the installation of TEMPest

Then

go get -v -u github.com/ChacaS0/tempest
GOBIN permanently in PATH

Add this line to /etc/environment:

GOBIN=<PATH_OF_YOUR_CHOICE>
PATH=$PATH:$GOBIN

Then

go get -v -u github.com/ChacaS0/tempest

Initialization

Command line init

It is very easy to use.
First, to initialize it the first time, run:

> tempest init

This will generate a .tempestcf file in $HOME/.tempest.

It will hold the list of all the targets.

If there is an issue and the file can't be created somehow, you can still create it at its default location: $HOME/.tempest/.tempestcf and leave it empty for now.

This will also generate a $HOME/.tempest/.tempest.yaml file. It will hold the configuration of TEMPest.

If there is an issue and the file can't be created somehow, you can still crate it at its default location: $HOME/.tempest/.tempest.yaml with default content:

duration: 5
auto-mode: false

Parameters:

  • duration : This is the maximum age the content of the target's content, choose it carefully!

You have to choose a duration greater than 1 !!

Add a new target to the list

To add the current directory

Positionate yourself to the deried directory. For example, if you want to add /tmp, use this instructions:

$ cd /temp
$ tempest add

With command-line

Just run:

tempest add ...<PATH>
  • <PATH> being the path to the directory to be added to the list of targets
  • ... meaning that many arguments can be passed

By convention we will give the name temp.est to the directories to be added to TEMPest

With a text editor

Just open $HOME/.tempest/.tempestcf and add a new line with the absolute path of the target to be added.

List the current directories added to TEMPest

Using TEMPest

$ tempest list

Viewing the file $HOME/.tempest/.tempestcf

$ cat $HOME/.tempest/.tempestcf
Or
$ vi $HOME/.tempest/.tempestcf

Updating TEMPest

$ tempest update

Runing a global purge

The age of the files deleted will be the one older than the number of days set as "duration" in $HOME/.tempest/.tempest.yaml

Test mode

In this mode, it will display the file it would delete plus the size.
Nothing gets deleted. To do so, try:

$ tempest start -t

Real one

Runing this will actually delete files/directories, make sure everything inside $HOME/.tempest/.tempestcf is meant to be there with TEMPest list first.

$ tempest start

Purging one directory

Still based on the config file

It is possible to purge a directory even if it is not added to TEMPest. There is also a test mode for this one.

Test mode

$ tempest purge -p <PATH> -t
  • <PATH> is the path you want to purge
  • -t declare the test mode

Real one

$ tempest purge -p <PATH>
  • <PATH> is the path you want to purge

Access the documentation (usage)

It is recommanded to have Showdown installed. If you don't but are interested, checkout this link.

$ tempest doc

There is also a "man like" view of the documentation.

$ tempest doc -m

More

If you want to know more about TEMPest, visit this page.


Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.