From: Dale <rdalek1967@gmail.com>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] Books about making shell scripts and other nifty commands.
Date: Tue, 10 Jun 2025 13:07:19 -0500 [thread overview]
Message-ID: <9dfe9688-942b-bb7e-9b7c-e1371747ab55@gmail.com> (raw)
In-Reply-To: <CAK2H+eckO5V48YoFGvReEFgPc2578u0iKYDUsWxKWVPpjZQ4Fg@mail.gmail.com>
Mark Knecht wrote:
> On Tue, Jun 10, 2025 at 2:42 AM Dale <rdalek1967@gmail.com> wrote:
>> Dale wrote:
>>> Howdy,
>>>
>>> <<< SNIP >>>
>>> So, I'm looking for a book, paperback would be nice but hardback is fine
>>> too. I found this. I may look for a used version elsewhere too.
>>> Reading what is described, this sounds like a good place to start.
>>>
>>> https://www.amazon.com/Super-Easy-Linux-Bash-Scripting/dp/B0F7GF439K
>>>
>>> <<< SNIP >>>
>>>
>>> Any thoughts on one I linked too? Will that be OK for me to start out
>>> with given my VERY basic skills? Know of something better? When I was
>>> a kid, I was pretty good with BASIC on the old Commodore VIC-20 and 64.
>>> That was a LONG time ago tho.
>>>
>>> Thanks.
>>>
>>> Dale
>>>
>>> :-) :-)
>>>
>>
>> I got the book in. It's a good book for someone who is new to Linux.
>> Maybe coming from Windows or something where commands are different. It
>> talks about a lot about common commands and such and does touch on
>> scripts a bit. Thing is, it isn't what I'm looking for. I'm looking
>> for how scripts work and how and why they are formatted and such. I
>> have questions like what does the "{" and "}" do? How do I get it to
>> check something and if one result matches it does A but if it is some
>> other result it does B? Example.
>>
>> I'm wanting to write a script that opens a encrypted drive and mounts
>> the drive. When I run the script, I first want it to check and see if
>> it is still locked or not. If it is still locked, ask for the
>> passphrase and unlock. If it is unlocked, then move to the next part
>> for mounting. If it is already mounted, then nothing is needed. If it
>> is not, mount the drive. I'd also like it to print out what it is doing
>> or not doing as well. Back in the old basic days, we had "goto" and
>> such. I don't see that in bash type scripts. Figure there is a way
>> tho. ;-)
>>
>> My question is this. Do some of you have scripts that are fairly simple
>> to figure out that does something similar to this that you can share?
>> I'm wanting to check some scripts that are known to work and figure out
>> how they work. I tried to look at Frank's checksum script but that
>> thing is HUGE. I was lost before I even needed to scroll down. Some
>> fairly small and simple scripts may give me enough to figure out how to
>> do what I want to do and understand it as well. If someone has a script
>> that is more like a example script, where the words used explain what
>> the script is doing and why it is laid out a certain way, that would be
>> really nice.
>>
>> The book is nice. It's just not what I'm looking for. I may try to
>> find something cheap on Ebay.
>>
>> Thanks.
>>
>> Dale
>>
>> :-) :-)
>>
> <hehe> Don't listen to me....
>
>
> In bash scripting, what purpose do { and } serve?
>
> In Bash scripting, { and } have several purposes depending on the context:
>
> Command Grouping:
>
> Used to group multiple commands into a single unit. This is useful for
> executing a set of commands in a specific context, such as within an
> if statement or redirecting output.
>
> Example:
>
> bash
>
> { echo "Hello"; echo "World"; } > output.txt
>
> This redirects both echo commands' output to output.txt.
>
> Brace Expansion:
>
> Allows generating multiple strings based on a pattern, often used for
> file and directory creation.
>
> Example:
>
> bash
>
> echo {A,B,C}
>
> Outputs: A B C
>
> Array Definition (in newer versions of Bash):
>
> Used to define an array or reference elements within an array.
>
> Example:
>
> bash
>
> my_array=(one two three)
> echo ${my_array[1]} # Outputs "two"
>
> Function Definitions:
>
> Used when defining a function in Bash.
>
> Example:
>
> bash
>
> my_function() {
> echo "Hello from the function!"
> }
> my_function
>
> Would you like to see how {} interacts with networking-related tasks?
> Maybe for automation with server configurations or scripting remote
> access methods?
>
>
No wonder I was confused. What they do depends on where or how they are
used. So, it's like when a word has more than one very different
meaning. That explains why I couldn't figure out what they did. I been
reading the links posted by Quico. I got a feeling learning even just
enough to make a script that does what I want for encrypted drives is
going to be harder than I think.
One reason I'm wanting books, I can lay in bed and read. Sometimes I
wish I had a little laptop or something I could use to read web pages or
monitor things with, from the bed. Sometimes my health says I'm going
to be horizontal not vertical. It is pretty good at insisting. o_0 I
did order some more books, little cheaper tho. Maybe those will help.
https://www.amazon.com/gp/product/1913842045
https://www.amazon.com/gp/product/1499546653
https://www.amazon.com/gp/product/1913597091
I got to read up on arrays and what they are. I think the meaning I
have in my head is different when it comes to computer programming.
Right now, I'm replacing the axle seal on a Kubota L2500 tractor. It
doesn't just leak, it pours. I might add, it is 88F here with a
humidity of about 120% or so. I'm in the shade and I still have to come
in and dry out a bit.
Dale
:-) :-)
next prev parent reply other threads:[~2025-06-10 18:08 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-05 3:49 [gentoo-user] Books about making shell scripts and other nifty commands Dale
2025-06-05 15:32 ` Mark Knecht
2025-06-05 16:02 ` Eli Schwartz
2025-06-05 16:16 ` Mark Knecht
2025-06-05 17:19 ` Eli Schwartz
2025-06-06 14:14 ` [gentoo-user] " Nuno Silva
2025-06-05 16:59 ` [gentoo-user] " Dale
2025-06-05 17:44 ` eric
2025-06-05 19:50 ` Re[2]: " Stefan Schmiedl
2025-06-06 2:58 ` Dale
2025-06-05 17:03 ` Jay Faulkner
2025-06-05 17:56 ` yahoo
2025-06-05 18:48 ` Arve Barsnes
2025-06-05 19:05 ` Eli Schwartz
2025-06-08 0:09 ` [gentoo-user] " Nuno Silva
2025-06-05 18:33 ` [gentoo-user] " yahoo
2025-06-10 9:39 ` Dale
2025-06-10 10:33 ` Quico Jurado
2025-06-10 14:33 ` Mark Knecht
2025-06-10 15:01 ` Eli Schwartz
2025-06-10 16:24 ` yahoo
2025-06-10 18:12 ` Dale
2025-06-10 18:07 ` Dale [this message]
2025-06-10 18:18 ` Quico Jurado
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9dfe9688-942b-bb7e-9b7c-e1371747ab55@gmail.com \
--to=rdalek1967@gmail.com \
--cc=gentoo-user@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox