scripts/README.md

108 lines
3.4 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Scripts
## Description:
Some useful scripts (for me) that can be added to $PATH :)
## List:
* apt-fast: Script for faster package downloading with 'axel'.
* bash_quote: Get a random quote from http://danstonchat.com
* firewall: A script shell to set some iptables rules.
* update-dynmotd.d/: scripts to update the motd (via the /etc/update-motd.d directory).
* flac_to_mp3: convert all flac files of a directory into mp3.
* num_circle: Transform a number into a digit with a circle.
* pomodoro: Print a task and a timer in a file. Try to apply Pomodoro Technique!
* snapsend.sh: Send a ZFS snapshot to a remote host.
* test_ssl3: Test if a website supportes the SSLV3 protocol.
* veille.sh: Kill every sensitive process and files then lock the screen.
* vimmanpager: Tiny script can be used as PAGER, it will call VIM!
* weblink: Tiny Python script that run a small webserver to share files.
* wol: Send WakeOnLan/magic packets to remote host.
* zenity_generator: Script to generate zenity window.
* zfSnap.sh: Take snapshot of a ZFS pool.
### Apt-fast
Speed-up APT packages downloading with 'axel' (light command line download accelerator). Juste use it like aptitude/apt/apt-get.
```sh
sudo apt-fast full-upgrade
```
### Bash_quote
Get a random quote from http://danstonchat.com with 'lynx'.
### Firewall
A shell script to apply some Iptables rules.
* Rules are automatically apply only for the UP interfaces.
* If it's detect some softwares (eg. Apache2), Iptables rules for ports 80/443 are automatically apply.
* Special rules allow all traffic throught a VPN:
```sh
firewall vpn
```
* If a local file exists (firewall.local) it will also apply it. For personnal rules for example.
### Flac_to_mp3
Convert FLAC audio files to MP3 with 'avconv'.
* Convert a directory:
```sh
flac_to_mp3 /media/data/bisounours_land_v2
```
* Convert a file:
```sh
flac_to_mp3 /media/data/makarena.flac
```
### Num_circle
Tiny Bash script that take a number between 0 and 20 as argument and transform it into a digit with into a circle.
```sh
num_circle 18
```
### Pomodoro
My implementation of the Pomodoro Technique (https://en.wikipedia.org/wiki/Pomodoro_Technique).
You can simply launch it with:
```sh
pomodoro "Work my french kiss"
```
Then the script will:
* Create a ~/.pomodoro directory to store current task (current.task) and a summary of each week (eg week-42-2015.txt).
* First, it's put task name and a timer (for $WORK_TIME) to the current task file.
* Once the $WORK_TIME has been reached:
1. Log task name and worked time to the weekly log file
2. Toggle the sound to mark a pause
3. It's put a pause/break message for 5/20 minutes as current task
4. Delete the current task file
#### Disavantages
* Must run the script every ~30 minutes
* …?
#### Advantages
* I can display my current task and it's timer wherever i want (tmux, herbstluftwm, …)
* Written to work with /bin/sh
## Test_ssl3
Redhat's script to test if an LDAP server support SSLv3.
You could also use a nmap command:
```sh
nmap --script ssl-enum-ciphers -p 443 ldap.tld.org | grep "SSLv3: No supported ciphers found"
```
## Weblink
Python program that run a small webserver (BaseHTTPServer) to easily share some files.
* eg:
```sh
weblink /tmp/goodbye.file
HTTP server running at http://localhost:8888/
^C^C received, shutting down server
```
* With a password:
```sh
weblink --pass=die /tmp/kitty.file
HTTP server running at http://localhost:8888/die
```