31 lines
1.6 KiB
Markdown
31 lines
1.6 KiB
Markdown
|
---
|
||
|
title: Bash scripting for fun (and profit?)
|
||
|
date: 2024-08-19
|
||
|
permalink: daily/2024/08/19/bash-scripting-for-fun-and-profit
|
||
|
tags:
|
||
|
- software-development
|
||
|
- linux
|
||
|
cta: ~
|
||
|
snippet: |
|
||
|
Solving problems with Bash scripts.
|
||
|
---
|
||
|
|
||
|
As well as PHP, JavaScript, HTML, CSS, etc, I write a lot of Bash scripts.
|
||
|
|
||
|
From [project-specific run files][0] to CI pipelines, Dockerfiles and deployment scripts, Bash is used a lot in the ops side of software development.
|
||
|
|
||
|
Today, though, I wrote [a small Bash script for my personal laptop][1].
|
||
|
|
||
|
I store an archive of video files on an external hard drive of conference talks, courses, tutorials or live streams that I want to keep or rewatch, and found that I've sometimes downloaded the same videos more than once, with the same files on my laptop and hard drive.
|
||
|
|
||
|
A few days ago, I was watching a video that I thought I'd save, but wasn't sure if I already had, so this script dumps the contents of my hard drive into a JSON file that I can easily browse or search through to see if I already have a video archived.
|
||
|
|
||
|
The script is fairly simple and uses `tree` and `jq` to display and format the data before saving it to a file on my laptop.
|
||
|
|
||
|
When I need to update the file, I plug in the hard drive and run it again.
|
||
|
|
||
|
A simple problem, and not something related to a particular project, but something I was able to solve with a Bash script.
|
||
|
|
||
|
[0]: {{site.url}}/daily/2022/08/15/using-run-file-simplify-project-tasks
|
||
|
[1]: https://github.com/opdavies/dotfiles.nix/blob/a1ef2d1402c9c607e7a3e4427ce125d0cabeddcd/lib/shared/scripts/export-video-list.nix#L12-L31
|