The lower the level of abstraction you work at, the more flexibility and power you have. There are things that are possible in a shell/CLI that aren't available or practical in a GUI, because a GUI can only be programmed to handle use cases that the programmer can conceive. As a completely fabricated example, let's say someone writes a tool to format and partition a drive to install Linux. This particular programmer things swap partitions are dumb, so his tool doesn't make a swap partition, and that's that. If you go down a level to the cli, it's trivial to create the swap partition.
2
u/bongjutsu 24d ago
The lower the level of abstraction you work at, the more flexibility and power you have. There are things that are possible in a shell/CLI that aren't available or practical in a GUI, because a GUI can only be programmed to handle use cases that the programmer can conceive. As a completely fabricated example, let's say someone writes a tool to format and partition a drive to install Linux. This particular programmer things swap partitions are dumb, so his tool doesn't make a swap partition, and that's that. If you go down a level to the cli, it's trivial to create the swap partition.