3 ms·
I would suggest not to mess with the current working directory and instead do something like this: for project in go-cicd/*; do project="${project#*/}"
by hawski 3y ago
I would suggest not to mess with the current working directory and instead do something like this:
for project in go-cicd/*; do
project="${project#*/}"
- bravetraveler 3y agoIndeed, thank you for mentioning that - I was going to suggest similar. That said, if you do (ie: scratch files, things outside of control, whatever), consider the directory stack: https://www.gnu.org/software/bash/manual/html_node/Directory-Stack-Builtins.html https://www.gnu.org/software/bash/manual/html_node/Directory... Using 'pushd' and 'popd' can save your fingers/brain from getting lost in context.
- arp242 3y agoI like using subshells for this: ( cd dir for f in ./*; [..] ) There's a few scenarios where this won't work (mainly if you want to set a variable from the "outer scope"), but 99% of the time it works nicely.
- bravetraveler 3y agoAh, that's a nice/neat thought - thank you for sharing! Makes total sense, temporary/disposable shell for such things