Archive for the ‘*nix-tools’ Category
Posted by jpluimers on 2020/09/07
For a simple comma separated list (no quotes), I was expecting a sed script (and indeed it is possible), but tr is more elegant:
Use tr to change , into newlines:
tr , "\n" < list.txt
See https://en.wikipedia.org/wiki/Tr_(Unix)
Source: [WayBack] bash – convert comma separated values into a list of values using shell script – Stack Overflow.
–jeroen
Posted in *nix, *nix-tools, bash, bash, Development, Power User, Scripting, Software Development | Leave a Comment »
Posted by jpluimers on 2020/08/21
find . -type f -name '\.*' -print
Must work if you want list every hidden file down in the directory hierarchy.
This sort of works on Linux, but fails on VMware ESXi (on Linux it only works when applying -maxdepth 1, deeper levels fails because they list all files where the top directory starts with a .):
If you want hidden files and hidden directories, without . and .. :
find -regex '\./\..+' -print
This works on both Linux and VMware ESXi:
If you want hidden files and hidden directories, without . and .. :
find . \( -type f -o -type d \) -name '\.*' -print
Based on:
–jeroen
Posted in *nix, *nix-tools, bash, bash, Development, Power User, Scripting, Software Development | Leave a Comment »
Posted by jpluimers on 2020/08/17
I think it was Thomas Mueller pointing to this, but I’m not sure as I found it in a browser tab from long ago: [WayBack] Welcome to Dirvish
Dirvish is a fast, disk based, rotating network backup system.
With dirvish you can maintain a set of complete images of your filesystems with unattended creation and expiration. A dirvish backup vault is like a time machine for your data.
Dirvish was originally created by jw schultz .
Before starting, I want to read these:
–jeroen
Posted in *nix, *nix-tools, Power User, rsync | Leave a Comment »
Posted by jpluimers on 2020/08/12
For a project I’m going to be in need to compare version numbers.
I’m not sure yet if I need wildcards, or can leave them out (but for partial semantic versioning, I might need them).
Below a bunch of links that should get me started.
From a quick glance: versioning is hard, comparing even harder.
On versioning in general
Numeric versioning (usually without wildcards):
On semantic versioning (SemVer for short):
On the C# Version class (which handles most of semantic versioning except: leading zero’s, very large numbers, non-numeric release specifiers)
Interesting idea, but not sustainable: using floating point values to compare versions:
On wildcards:
Via: [WayBack] Anyone tips for a TVersion structure that supports at max quad digits or wildcards and comparison? Like 3.2 matching 3.2.5.7, but not matching 3.3.4.28 ? – Jeroen Wiert Pluimers – Google+
–jeroen
Posted in *nix, *nix-tools, Development, Power User, rpm, Software Development, Versioning | Leave a Comment »
Posted by jpluimers on 2020/07/24
A few tips:
- Recursively getting all md5 sums from a source directory:
cd /sourceDirectory
find -type f \( -not -name "md5sum.txt" \) -exec md5sum '{}' \; > md5sum.txt
.
- Checking the sums against a target directory
cd /targetDirectory
md5sum -c /sourceDirectory/md5sum.txt
.
On some systems (this was an ESXi system which can’t run stuff from the console in parallel), you could optimise this using xargs for the generation and GNU parallel for the generation and checking. Both should be very similar:
GNU parallel is written to have the same options as xargs. If you write loops in shell, you will find GNU parallel may be able to replace most of the loops and make them run faster by running several jobs in parallel.
Via:
–jeroen
Posted in *nix, *nix-tools, bash, Power User | Leave a Comment »
Posted by jpluimers on 2020/07/21
Good to remember both these:
[WayBack] Operant Conditioning by Software Bugs – Embedded in Academia which means when using a system, you subconsciously start behaving around it’s issues. This also happens when you the software you wrote the software for such a system: you hardly test the things that you broke.
The magic SysReq key on Linux systems running on PC-hardware allows you to sync/mount read-only/shutdown a system by keyboard (and many more options – see the Wikipedia list below). Do not forget to enable this as it is disabled by default. And remember that many laptops forego the SysReq key (as do Mac systems).
The order while holding Alt-SysReq down is S,U,B…
Both via [WayBack] Kristian Köhntopp – Google+
–jeroen
Read the rest of this entry »
Posted in *nix, *nix-tools, Development, Keyboards and Keyboard Shortcuts, Power User, Software Development, ThinkPad | Leave a Comment »