this post was submitted on 03 Aug 2023
26 points (100.0% liked)

Linux

1257 readers
46 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
26
Naming Bash scripts (lemmy.dbzer0.com)
submitted 1 year ago* (last edited 1 year ago) by ArcaneSlime@lemmy.dbzer0.com to c/linux@lemmy.ml
 

I'm crossposting this here

A) So I can see if I know how to cross post lol

B) To bring attention to the !linux4noobs@lemmy.world community here, as it it woefully small and could use some publicity, especially to those who can help more than the noobs seeking it out

C) Hopefully get the answer I seek.

...did the crosspost work? (Ayy alright!)

top 8 comments
sorted by: hot top controversial new old
[–] helpmeplease@infosec.pub 14 points 1 year ago* (last edited 1 year ago) (1 children)

Just name your script with your credit card numbers, so you're pretty sure you won't have any collisions... Don't hesitate to let me know when you've done it :)

[–] aperson 2 points 1 year ago

The thing I always forget to include is those pesky numbers on the back.

[–] oldGregg@lemm.ee 5 points 1 year ago* (last edited 1 year ago) (1 children)

Hahaha when I click the link from /all it takes me to

https://zerobytes.monster/c/beautifulfemales

When I go to the comments first then click the link it goes to

https://lemmy.dbzer0.com/post/1464137

[–] ArcaneSlime@lemmy.dbzer0.com 1 points 1 year ago

Lmao yeah something is going on with linkage, the other day someone linked me to a lemmy comment but it would only show me a different comment, and others could load the right one correctly. No clue what that's about.

[–] lvl@kbin.social 3 points 1 year ago

If you use them for your use only, or want them "cleanly" organized, consider prefixing it with something personal to you (or a generic one such as my_). For example, I'd prefix them with l_: my_rename_photos.sh, my_lightson.sh, etc.

If there's a lot of them, write a wrapper script which would call the individual scripts from a common location (/usr/share/my-scripts/). Then, you can only make sure your wrapper script is aliased/moved in the PATH. Example: my rename, my lightson, etc.

[–] palordrolap@kbin.social 3 points 1 year ago (1 children)

which commandname will tell you if there's a command already by that name on your system without having to run anything.

This only finds things in places stored in the $PATH environment variable, though.

You could query your package manager to see what packages for your distribution might contain the command name, but 1) that will also turn up support files and the like and 2) Not all distros have the same commands, especially once you get beyond the core Unix/Linux command set.

e.g. on a system with apt, I can run apt contains commandname and get a list of everything containing "commandname"

Another user suggested prefixing with my_, but you might consider using your initials, a short form of your username or some other identifier instead. e.g. Everyone is "me/my" to themselves, but fewer people share your initials.

Also, a suffix might actually be a marginally better choice depending on your tab-completion preferences.

There's precedent for some actual "official" commands using a .suffix style, especially when multiple packages have their own version of a particular command, or a minor variant. On my computer I have things such as uncompress.real, vim.tiny, lzip.plzip and telnet.netkit, for example.

Something like scriptname.arcslime would fit right in, whether or not scriptname is a thing in its own right or not.

[–] ArcaneSlime@lemmy.dbzer0.com 1 points 1 year ago

I like the .suffix idea, I may run with that, thanks!

[–] Ninguem@lemmy.pt 2 points 1 year ago

Don't know the site you're looking for - might have never seen it. But I saw a tip a while back: name YOUR scripts something like ",script" (with a comma, or other confortable to type character as 1st character). It would be odd to ever find a colision.

I just don't do that though! Too odd!