/scripts

Miscelaneous utilities and tools

Primary LanguageShell

Collection of scripts

These are just some scripts I use in my machines.

Descriptions

Xlaunch

Launches an X.org server in another display with the given program

If no program is given as argument, choose on dmenu (if available)

alarm

A simple alarm script, it plays a file with mplayer.

It forces you to enter “alarm off” in the terminal for setting the alarm off. The typing should make your brain react and wake you up… well.. in theory

I use cron to set up the time(s) when the script will be triggered. you can also use the “at” command to set temporal alarms.

apt-clean.sh

Script for APT package manager based systems, for cleaning it up of installed packages, and clearing cache files.

arch_reinstall.sh

Dirty script I use for doing some rutine setup tasks when installing and configuring a new archlinux install.

Note: I still didn’t use it much, probably needs some love

arch_updatemirrors.sh

Script to download the full list of arch mirrors, test them and select the fastest ones.

autoscroll.sh

Slowly scrolls down with the mouse automatically, so you can read a webpage, a book, or whatever you want to read on your PC. Useful when you have your hands busy when eating or doing something.

You can activate/deactivate it by binding a key shortcut to..

   pkill autoscroll.sh || autoscroll.sh

You need xmacro installed.

browser

This script is set as my default handler for opening webpages.

It’s just a wrapper around my browser… I just wanted to keep it synced, and it allows me to check for multiple browsers, so I can keep the same configuration in different systems with different browsers.

camplay

A simple script for displaying the webcam (good to use when on lack of a mirror :P)

Requires mplayer

camrecord

A simple script for recording videos with the webcam Requires mencoder

checklight.sh

Captures from the camera and changes the brightness of the screen backlight according to the brightness level of the image captured by the cam.

Uses ffmpeg, imagemagick, xbacklight and acpi

colortable.sh

Just a simple typical display of colors supported by the terminal

commit.sh

Commit script for SVN.

It automatically adds/removes new/missing files (use svn:ignore for files you don’t want to include).

Commits also changes done to the repositories designed as externals.

Reuses svn-commit.tmp files left from uncommitted messages.

cplay

Script for controlling cmus music player

  • If no cmus is running, it will open it on a terminal
  • If run without arguments, it will toggle playback
  • If run with a playlist as argument, it will be loaded
  • If run with other files as argument, they will be added to current playlist

Other arguments:

–load-pl Show an Interactive dmenu to load a playlist from the directory set in the CPLAYDIR variable.

–save-pl Asks for a name and saves the playlist in the playlist directory.

crypt.sh

Wrapper around gpg to encrypt/decrypt a file or directory it will also (de)compress them

dmenu_run

Modified dmenu_run from suckless, that uses an history file to store the most recent commands introduced and display them the first ones on the list.

Requires dmenu (and stest, which is in the same package)

dtach_run

Convenience script to use with the dtach tool.

It will run in a detached session whatever arguments are given, assigning automatically a pertinent socket.

If it’s called from a symlink starting with “d”, it will use the name of the symlink as the command to call (for example, symlink “dbash” will start a detached bash session).

Also, for non-US keyboard friendliness, it will use Control+Q as default escape shortcut to dettach the session (overriden by DTACH_ESCAPE)

dtsh

Wrapper around the ‘dtach’ utility to manage multiple sessions stored in the same directory, creating/switching to them easily.

dwm.sh

Wrapper script around my dwm window manager

dxmms2

Script to manage xmms2 playlist and collections by means of dmenu.

e

Not really very useful anymore, since emacs already improved emacsclient invocation, but this was my wrapper around emacs.

ffscreencast.sh

Script to record a screencast

findsrc

Searches recursivelly the directory for files matching a specific regex

flvget.sh

Quick and dirty script to find flv videos from my chromium browser cache.

flvplay.sh

Plays and offers to save the most recent flash video that is currently loaded

idlescript.sh

Keeps waiting until there’s a lapse of time with prolonged inactivity from user and system, and sets the computer to suspend status.

I wrote this script because most other suspend-on-idle methods don’t take HD activity into account, which is required when you let the computer alone working on some operation, and want it to automatically suspend when the operation is finished.

If you want the computer to wake up automatically at some given time you can use the command: rtcwake -t <time>

Requires pm-utils and xprintidle

jsonpipe

PHP implementation of jsonpipe.

Original implementation (in python) here: https://github.com/zacharyvoase/jsonpipe

lna

Wrapper for “ln” so that it’s straightforward to create symbolic links using absolute paths.

makegrubusb.sh

Script to make bootable usb sticks

mount.iso

I don’t want to remember the arguments for mounting an iso image, so I made this script to use it instead.

noise

Generates background whitenoise

Requires sox

pls

Tool for listing the top CPU-consuming running processes it accepts a regexp argument to be specific.

pomodoro

Script to show notifications on pomodoro timeout, useful to follow the pomodoro technique book about improving productivity, or as a multi-purpose timer (the coundown minutes can be set as arguments).

http://www.pomodorotechnique.com/

powersave.sh

Activates some options for reducing the power consumption.

ptop

Uses pgrep regular expressions to open top with the processes that match them

rename.sh

Port of the perl ‘rename’ tool (also called prename) that is shipped in Debian, this one only uses sh and sed for portability, so it also runs on cygwin. It will also preview the list of mv commands to perform and ask for verification before calling them.

retry

Repeats the execution of the given command until it returns a zero exit code.

setwallpaper

Sets a random wallpaper from my collection of wallpapers

statck

This script checks for temperature and battery and displays a notification (using notify-send) if the limits are too high.

It can either execute a single time, or be run as a daemon (statck -d) that will re-run the check each minute.

It has also an option to show the status as a single line (statck -1) which can be used for displaying it at applications status line.

subsync.sh

Script for synchronization of SRT subtitle files

t

Wrapper to execute the default terminal (defined by XTERM variable, which I set in my ~/.profile).

Also, any args received will be executed in a subshell in the terminal, pausing when the exit code is not standard (error).

thumb-extract

Extracts the image thumbnails stored in the “thumb.db” files left out by windows installations.

trash

Move files to the (XDG) Trash Without arguments, ask for Trash to be emptied

turboclick.sh

Performs a lot of clicks pretty fast in an endless loop. It can drive you crazy if you execute it unprepared. I just made it for fun, and beating those silly flash games about “how fast can you click?”

You can activate/deactivate it by binding a key shortcut to..

   pkill turboclick.sh || turboclick.sh

You need xmacro installed.

vol.sh

Increases/decreases/(un)mutes the volume (uses pulseaudio)

wakeat

Sets the computer in suspension (to memory) and sets it to automatically wake up at the given time.

xinit.sh

This script is called from my .xinitrc at the start of my X.org session, before launching the WM.

WTFPL License (appliable to every script)

Copyright (C) 2012 Fernando Carmona Varo

These scripts are free software. They come without any warranty, to the extent permitted by applicable law. You can redistribute and/or modify any of them under the terms of the Do What The Fuck You Want To Public License, Version 2. See http://www.wtfpl.net/ for more details.