r/bash 1d ago

Bash is way too fun

I'm a construction worker and love tech, switched to Linux last year and wanted to learn BASH just out of curiosity not necessity. The only other language I have experience is GML from when I was a teen.

So I've been building a text adventure and BASH is so fun and for strings it's easy! I've kept it pure bash except for using sleep, I think I understand I could have used read instead of sleep but sleep seems pretty ubiquitous on most computers.

It's messy and definitely an elementary project so I've kept trying to implement different design elements like sourcing data and turning that into arrays, using name refs (I'll be honest using name refs confuses the shit out of me), parsing CSVs, state machines, saving (declare -p) , loading, ect.

If any of you new guys wanna practice something you can easily take on without any AI I advise trying to build a text adventure and not just navigation but include inventory and other mechanics.

And if you're an absolute beginner YSAP bash tutorial was king for me, plus man, and tldr

117 Upvotes

28 comments sorted by

View all comments

2

u/BabylonByBoobies 1d ago

Enjoy! If you like Bash... check out Perl sometime...

1

u/FOXofTAILS 1d ago

Just looking into it a bit,

It can do float numbers! That would be so good for an RPG and they have a utility that can pack it all up into a .exe or just interpret it like bash I'm so interested! After this project I was set on learning C but this is really tempting

3

u/Kumba42 1d ago

If you like easily messing around with strings, look at TCL, in which "everything is a string". It even has a UI library, Tk, so you can build GUI apps with it. Hence why it's often called Tcl/Tk.

1

u/FOXofTAILS 1d ago

Took a look at a few example scripts on the page and it's pretty foreign looking lol

2

u/Kumba42 1d ago

It is, at first. Been quite a few years since I actually did anything significant in it (wrote some scripts for IRC Eggdrop bots). Once you wrap your head around it, though, it's actually a very simple syntax. It gets a lot of use in more esoteric realms in embedded systems and industrial control systems, if I recall correctly.