Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Rsync Time Backup | 2,851 | 8 days ago | 1 | March 03, 2021 | 101 | Shell | ||||
Time Machine style backup with rsync. | ||||||||||
Backintime | 1,545 | 9 days ago | 209 | gpl-2.0 | Python | |||||
Back In Time - A simple backup tool for Linux | ||||||||||
Asimov | 1,209 | 6 days ago | 1 | March 03, 2021 | 34 | mit | PHP | |||
Automatically exclude development dependencies from Apple Time Machine backups | ||||||||||
Acnh Bcats | 186 | a year ago | ||||||||
Animal Crossing New Horizons BCAT Events | ||||||||||
Timedog | 173 | 2 years ago | 1 | February 27, 2018 | 8 | gpl-2.0 | Python | |||
Displays set of files that were saved in Time Machine backups | ||||||||||
Gbm | 171 | a day ago | gpl-3.0 | Visual Basic .NET | ||||||
Game Backup Monitor - Automatically backup your saved games! | ||||||||||
Raspberrypi Timemachine | 161 | 5 years ago | 1 | mit | ||||||
Apple Time Machine with raspberry Pi | ||||||||||
Rsync Time Machine | 92 | 3 years ago | 1 | gpl-2.0 | Python | |||||
Time Machine Style backup using rsync | ||||||||||
Time Machine Sparce Bundle Fix | 68 | 9 years ago | 1 | Shell | ||||||
Time Machine Sparsebundle Fix | ||||||||||
Ia.bak | 61 | 3 years ago | 15 | gpl-3.0 | Shell | |||||
We back up a lot of stuff from around the web; now it's time to back up the Internet Archive, just in case. |
This repo holds some generally useful scripts I've written. If any of these turn out useful to you, buy some beer in celebration and drink it to my health and good fortune.
bashlib
is a library of convenience functions for the GNU Bash shell.
Bash is the POSIX-compliant shell you find on most any UNIX system. This library makes it a little easier to make sane and appealing bash scripts.
Amoungst the many features it provides are:
trc
, dbg
, inf
, wrn
, err
, ftl
: allow easy printf
-style outputting at different verbosity levels.emit
, spinner
: provide several types of spinners to keep the user enthralled while waiting for some lengthy task to complete.ask
: a simple function that makes taking user input just that bit easier.showHelp
: an easy way to show some documentation on your script's usage.The recommended way of using bashlib
is by creating a symlink in PATH
to the bashlib
script in your check-out of this repo. Eg.
ln -s ~/.src/scripts/bashlib/bashlib ~/.bin/
Then your scripts can use it by doing a source
without specifying the location, like this:
source bashlib
See the comments in the file for information about what the functions do and how to use them.
timetravel
is a command-line tool for accessing the files in your Time Machine backups.
Time Machine is an OS X technology for performing continuous backups of your files to local or remote disks. Since OS X 10.7 (Lion), Time Machine makes local backups of all your files. This means you have snapshot versions of all your files at different times in the past. If you are running Lion right now, you already have these snapshots.
To access all this backup data, OS X comes with a program named Time Machine, which opens a GUI front-end that lets you use Finder for browsing your backups. This is really slow and tedious for anyone used to navigating their system on the command-line. To solve this problem, timetravel
was written.
timetravel
takes the following options:
-H [host]
: Specify the host whose backups to search.-T [time]
: Specify the time of the snapshots to search.-D [disk]
: Specify the label of the disk whose backups to search.-l
: List all known backups of the file.-r
: Restore the file from backup.-d
: Show the difference of the file with its backup.-f
: Don't abort before destructive operations.timetravel
also takes a file argument. This can be any file or directory that exists either on your file system or in a backup. Files may be specified using an absolute or relative pathname. Relative names are resolved against the current working directory. When no file is given, timetravel
will work with the current working directory instead.
When no operation option is given (such as -l
, -r
or -d
), timetravel
will show you the contents of the file in the backups.
When showing the contents of directories, their files are enumerated. When showing the contents of a file, a pager is opened for it if timetravel
's standard output is a terminal. If timetravel
is piped or redirected, the contents of the file is written out raw. This allows you to recover files to new filenames or do things like searching them with grep
.
When no host, time or disk is specified (using -H
, -T
or -D
), timetravel
will use default values for them. The host will default to the name of your computer, the time will default to Latest
and the disk will default to Macintosh HD
. When using timetravel
to list snapshots (the -l
option), these will default to empty values instead. Note that when listing snapshots, these values are actually search prefixes. If, for example, you use -T 2012-06
, all snapshots in June 2012 will be searched. Empty values will cause all snapshots of that type to be searched.
mvn-tools
is a collection of utilities for working with maven repositories and
java web application distributions.
src/
against the product in target/
to determine whether the artifact is outdated.tunmgrd
is a daemon that you use to bring up and keep up SSH connections. Great for setting and keeping up tunnels, port forwards and master connections.
I've had a really hard time finding a quality product that did this for me in a portable and sane manner. In the end, I decided I'd be better off writing it myself. The goals for tunmgrd
is:
diagnose
is a tool for checking what's going on with your connectivity to the Internet.
"Internet connectivity" is a very vague term and generally means "I can connect to stuff over the public network". This tool checks if you can reach a bunch of popular servers and if issues are detected tries some simple tests to diagnose possible causes.
Run diagnose
and look at what it tells you. If breakage is detected, it will generally issue some mildly useful advice.
parseJSON
is a filter used to convert JSON data into a structure much more friendly to parsing from bash scripts.
Each output element describes one key-value structure in the JSON stream. By default, elements are output separated by newlines (one on a line). Elements consist of a sequence of type characters (.
for object key and #
for array index), followed by the value of the key, and finally a =
followed by the value of the structure. Eg. the output of:
parseJSON <<< '{"foo":"bar", "child":[5, 6, {"cow":"moo"}]}'
is:
.foo=bar
.child#0=5
.child#1=6
.child#2.cow=moo
parseJSON
takes the following options:
-z
: Use a NUL byte as delimitor between data structures.-d [delim]
: Use delim
as delimitor between data structures. printf
-style escapes are accepted (eg. \0
).-v
: Verbosely describe what happens during the parsing of the JSON data.Report any bugs or feature requests as issues in GitHub or contact [email protected]