mirror of
https://github.com/natelandau/shell-scripting-templates.git
synced 2025-11-08 13:13:47 -05:00
continued text changes
This commit is contained in:
25
README.md
25
README.md
@@ -6,7 +6,7 @@ This is the centralized repository of all the shell scripts which I use for a nu
|
||||
## What's here
|
||||
|
||||
* **etc/** - Many of my scripts and shared functions call for configuration files. These configs are saved here.
|
||||
* **lib/** - Shared functions and libraries that are used throughout the scripts.
|
||||
* **lib/** - Shared functions and libraries that are used throughout the scripts. Note all my scripts require these files and will break if they can not be found.
|
||||
* **setupScripts/** - Scripts that configure new Mac computers from scratch. These scripts perform such tasks as:
|
||||
* Insalling [Homebrew][1] & associated packages
|
||||
* Installing mac applications using [Homebrew Cask][2]
|
||||
@@ -15,9 +15,7 @@ This is the centralized repository of all the shell scripts which I use for a nu
|
||||
* Installing [RVM][4] and associated Gems
|
||||
* Pushing a new SSH key to Github
|
||||
* **syncScripts/** - Scripts which use [RSYNC][5] and [Unison][6] to keep different directories and computers in sync.
|
||||
|
||||
## Usage
|
||||
Each of the directories has its own `README` describing in more depth how to use the files contained within. Most of the scripts here won't work without the scripting utilities in `lib/`.
|
||||
* **scriptTemplate.sh** - A bash script boilerplate template.
|
||||
|
||||
## Versioning
|
||||
|
||||
@@ -38,6 +36,25 @@ For more information on SemVer, please visit [SemVer][7].
|
||||
## A Note on Code Reuse
|
||||
The scripts herein were created by me over many years without ever having the intention to make them public. As a novice programmer, I have Googled, GitHubbed, and StackExchanged a path to solve my own scripting needs. Quite often I would lift a function whole-cloth from a GitHub repo and not keep track of it's original location. I have done my best within the scripts to recreate my footsteps and give credit to the original creators of the code when possible. Unfortunately, I fear that I missed as many as I found. My goal of making these scripts public is not to take credit for the wonderful code written by others. If you recognize or wrote something here that I didn't credit, please let me know.
|
||||
|
||||
# scriptTemplate.sh
|
||||
This is a bash script boilerplate template that I use to create all my scripts. It takes care of a number of items for you including:
|
||||
|
||||
* Sourcing associated libraries and functions
|
||||
* Gracefully trapping exits
|
||||
* Creating and cleaning up temporary directories
|
||||
* Writing logs
|
||||
* Checking for dependecies (i.e. - ffmpeg or rsync)
|
||||
* Passing options from the command line
|
||||
* Printing usage information when '-h' is passed
|
||||
|
||||
## Usage
|
||||
To use the bash boilerplate for your own script follow these steps.
|
||||
|
||||
1. Make a copy of `scriptTemplate.sh`.
|
||||
2. Ensure that the new script can find the utilities located in `lib/utils.sh` by updating the path of variable `utilsLocation` near the top.
|
||||
3. Ensure your script is executable (i.e. - run `chmod a+x scriptname`)
|
||||
4. Add your script within the function titled `mainScript`
|
||||
|
||||
[1]: http://brew.sh
|
||||
[2]: http://caskroom.io
|
||||
[3]: https://github.com/lra/mackup
|
||||
|
||||
Reference in New Issue
Block a user