this post was submitted on 26 Aug 2023
101 points (98.1% liked)

linuxmemes

20880 readers
2 users here now

I use Arch btw


Sister communities:

Community rules

  1. Follow the site-wide rules and code of conduct
  2. Be civil
  3. Post Linux-related content
  4. No recent reposts

Please report posts and comments that break these rules!

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 88 points 1 year ago* (last edited 1 year ago) (3 children)

find "${HOME}/docs/"

You want the full path in quotes so that paths with spaces are handled properly. Brackets are good practice when concatenating strings.

[–] [email protected] 7 points 1 year ago (2 children)

If the strings don't contain characters that help define a variable, like an underscore, how is it better practice to use curlies? It's it just for consistency? Have you had any style guides or linters critique the use of variables without them?

[–] [email protected] 23 points 1 year ago* (last edited 1 year ago)

More than anything, I find that it's a good habit to maintain in order to avoid simple mistakes. It also makes variables easier to spot in code and maintains consistency.

[–] [email protected] 22 points 1 year ago* (last edited 1 year ago) (1 children)
foo=ding
foobar=dong

echo \$foobar

Brackets make it explicit what you're trying to do. Do you want "dingbar" or do you want "dong"? I forget what the actual behavior is if you don't use brackets here, because I always use brackets for this reason now

[–] [email protected] 5 points 1 year ago (1 children)

I believe the actual behavior here would be printing “dong” as the shell interpreter is greedy in its evaluation of variables.

[–] [email protected] 2 points 1 year ago (1 children)

the actual behavior here is to echo the literal string "$foobar", because the $ sign is escaped. so no variable expansion will take place at all.

[–] [email protected] 2 points 1 year ago (2 children)

Oh lol. It doesn't show the $ at all on my mobile app till I escaped it

[–] [email protected] 2 points 1 year ago

ah, so it's up to the client. I'm using jerboa, in this case

[–] [email protected] 1 points 1 year ago (1 children)

You should use markdown's inline code (single `backtick`) and

block code
(triple backtick)

tags. They are consistent across most markdown renderers (except Reddit's, which uses four-space indentations (like, who the fuck thought that was a good idea?))

[–] [email protected] 1 points 1 year ago

I did use triple backticks

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago)

“Concatenating”….

…. That sounds either exceptionally painful or extremely fun.

Quite possibly both…

[–] [email protected] 1 points 1 year ago (1 children)

This shit fucked me up so much when i was learning linux stuff. Especially cause a lot of my file paths had spaces. This is the way.

[–] [email protected] 1 points 1 year ago (1 children)

The lesson for me was not to create paths with spaces. There are none in Linux unless you create them.

[–] [email protected] 1 points 1 year ago