&& executes the second command, if the command before was successful, || executes the second command if the first one was unsuccessful and ; executes the second command regardless of success.
Fun fact and disclaimer: this is a fork bomb. i tried it to run it on my phone via termux, thinking android would act up and terminate termux; but nope, my phone froze. Thankfully i hard-reset my phone by holding [VOLUME_DOWN]+[POWER] for ~5 seconds.
I may be totally confused but I’ve also always done it in that order, otherwise I feel like it would run upgrades from your cache of the apt repos (possibly hitting errors as stuff likes to change), then after it would run apt update (updating the repos).
My thought has always been update repos, then check those repos for software upgrades. I could definitely be wrong though.
Yeah but shouldn’t the order matter? My understanding was that && just said 'after the previous command, run this… ’ so running upgrade before update would miss any changes changes to repos… From what I can tell update is required before upgrade (just like you have it), doing it in reverse missed a ton of updates for me.
Presumably running upgrade with the update flag is smart enough to do it in the proper order because there would be no point in doing it in the opposite order. Many other package managers just work like this out of the box. Homebrew is such an example. Running upgrade automatically does “update” first.
Yes.
Also don’t forget && exists for sequential completion of any commands
&&
executes the second command, if the command before was successful,||
executes the second command if the first one was unsuccessful and;
executes the second command regardless of success.I didn’t know any of this, thank you both :)
These are much more useful than the :() :;: operator
Expanded it’s more clear what’s going on.
bomb() { bomb | bomb & } bomb
TSA would like to know your location
Fun fact and disclaimer: this is a fork bomb. i tried it to run it on my phone via termux, thinking android would act up and terminate termux; but nope, my phone froze. Thankfully i hard-reset my phone by holding [VOLUME_DOWN]+[POWER] for ~5 seconds.
Yeah, I was doing
sudo apt update && sudo apt upgrade
I may be totally confused but I’ve also always done it in that order, otherwise I feel like it would run upgrades from your cache of the apt repos (possibly hitting errors as stuff likes to change), then after it would run apt update (updating the repos).
My thought has always been update repos, then check those repos for software upgrades. I could definitely be wrong though.
Presumably running upgrade with the update flag does it all in one go.
Yeah but shouldn’t the order matter? My understanding was that && just said 'after the previous command, run this… ’ so running upgrade before update would miss any changes changes to repos… From what I can tell update is required before upgrade (just like you have it), doing it in reverse missed a ton of updates for me.
Presumably running upgrade with the update flag is smart enough to do it in the proper order because there would be no point in doing it in the opposite order. Many other package managers just work like this out of the box. Homebrew is such an example. Running upgrade automatically does “update” first.
If it were upgrade && update, yes that would miss the boat. --update is a baked in feature of apt upgrade, so it knows what to do ^_^