Questions tagged [conventions]

Naming conventions and best practice

Filter by
Sorted by
Tagged with
0 votes
1 answer
38 views

What's the difference between device properties and device attributes in udev?

For udev device entries, what is the technical difference between a "property" and an "attribute"? How are they customarily created (generated?) and used? Which one is the better ...
  • 103
0 votes
0 answers
48 views

Why Linux uses `blah' to quote strings by convention? [duplicate]

While I was reading the document of some Linux utilities, I found that they always quote strings using ` and '. For example, below is an excerpt from the man page of the find utility. -exec ...
1 vote
3 answers
84 views

Display a message in color by a conventional color name such as Red, Green, Blue, etc

WSL with Ubuntu 18.04 and GNU bash, version 4.4.20(1)-release (x86_64-pc). I wish to display a message with a conventionally named color via argument such as -red, or -green, or -blue or anything like ...
  • 115
0 votes
2 answers
236 views

Where should I source /usr/local/etc/profile from? .bash_profile or /etc/profile?

I know that, by default, bash will source /etc/profile and ~/.bash_profile. Now, suppose I also have machine-specific profile commands in /usr/local/etc/profile (involving stuff that's in /usr/local, ...
  • 7,661
2 votes
1 answer
34 views

Is it good practice to add the manpage section number to POSIX tools when referring to them? [closed]

I sometimes see people referring to tools, like ls append the manpage section number in parens, like the manpages themselves do (in ls's case ls(1)) in prose/text like answers and comments here on ...
  • 21
0 votes
2 answers
137 views

How to sort filename list (txt-file) by sub-strings of the filename/path with multiple levels. Special challenge: Two types of filename conventions

I'd like to sort the following list of filenames / pathes. L1_Data/level1/192027/LC08_L1TP_192027_20201126_20210316_01_T1 DONE L1_Data/level1/192028/LC08_L1TP_192028_20201126_20210316_01_T1 DONE ...
  • 111
0 votes
0 answers
79 views

What does (or did) the name "feh" represent?

To me, the name of the feh image viewer is not memorable enough for me to recall it when I need it. I feel that if I had some context, I'd be able to remember it better. What, if anything, does the ...
  • 813
-1 votes
1 answer
44 views

Is there a convention for naming and placing the manual page file for a command in source tree?

I think the name could be in format <command_name>.<section_number> where the numbers are shown in the description chapter of man man. I use doc directory for the file in a repository.
  • 558
1 vote
1 answer
54 views

When desiginng a CLI is there a preference/rule of thumb for using an option or a subcommand? [closed]

For example, to install a package with pacman one would use: pacman -S <package> While somebody using dnf would type: dnf install <package> While pacman uses the -S option, dnf uses the ...
2 votes
2 answers
191 views

How to choose an appropriate error prefix? [closed]

How can I figure out appropriate error prefixes to use when reporting various kinds of errors? Is there are guideline or overview of how these should be? I see patterns in many commands, but find it ...
0 votes
2 answers
250 views

Is it a good practice to use aliases? [closed]

I have a colleague who likes to use aliases instead of writing scripts, but I don't want to do this. First, you need to set the same alias on each computer. They behave differently on different ...
  • 111
0 votes
1 answer
816 views

command-line argument conventions for stdin, stdout

I'm writing a command-line tool that takes a file and modifies its contents. I would like the user interface to be as canonical as possible. So far, I have $ foobar -h usage: foobar [-h] [--version] [...
3 votes
1 answer
799 views

How to organize /opt?

I'd like to place a handmade script in its conventional place and folder structure. It's currently located in /opt/chkobm/chkobm, but it seems like a bad practice since it requires $PATH to include ...
  • 253
0 votes
1 answer
199 views

Can I add arbitrary directory to icon search dirs?

Linux desktop environments such as GNOME, KDE, XFCE etc search icon themes in some standard paths such as /usr/share/icons, ~/.icons, ~/.local/share/icons etc. I wonder if I can add any directory to ...
  • 113
1 vote
1 answer
447 views

why aliases found in root users ~/.bashrc file are not used for standard users by default?

Is there any reason why aliases like alias rm='rm -i' found in the ~/.bashrc file of user root are not used by default for any other users?
1 vote
2 answers
947 views

Naming convention of worker threads

I started reading about worker threads. Old Legacy worker threads is replaced with worker pools. $ ps -ef | grep 'kworker' root 6 2 0 04:41 ? 00:00:00 [kworker/0:0H-kb] root ...
  • 281
-3 votes
2 answers
455 views

Debian packages naming, documentation is self-contradicting

Debian policy manual (released on 2019-10-03) clearly states that "Package names (both source and binary, see Package) must consist only of lower case letters (a-z), digits (0-9), plus (+) and minus (-...
-1 votes
2 answers
222 views

Use of a specific character for commenting, like e.g. #, in config files depends on...? [closed]

I need help settling a discussion about comments in configuration files. This is about the question "what dictates which character/string is used for commenting in any given program?" Theory A) ...
27 votes
10 answers
8k views

one-liner vs script

I've noticed a lot of questions and answers and comments expressing disdain for (and sometimes even fear of) writing scripts instead of one-liners. So, I'd like to know: When and why should I write a ...
  • 69.9k
1 vote
3 answers
898 views

What are the conventional meanings for symbols used to show commands' syntax?

I am looking for some sort of "syntax key" for command line tools on GNU/Linux, something like this document that Microsoft has: https://docs.microsoft.com/en-us/windows-server/administration/windows-...
0 votes
1 answer
1k views

Why doesn't CTRL + C exit vim? [duplicate]

I'm aware that if I press esc followed by typing :q!, I can exit the vim editor, due to this question. However, the standard convention is for programs to exit when ctrl + c is pressed, which sends a ...
2 votes
1 answer
89 views

How to differentiate an executable sh file, and a source sh file?

I have sh files that are executable, and others that are only meant to be sourced by executable ones. On the executable ones I use no extension at all, and have the first line as #! /bin/sh. On the ...
  • 222
3 votes
1 answer
664 views

When did user accounts using UIDs above 1000 become normal? And why?

We have a really old NIS domain which is mapping some user accounts to UIDs less than 1000. I'm wondering when did using UIDs greater than or equal to 1000 for human users become 'standard', why did ...
-1 votes
3 answers
207 views

Why is it uncommon for stdin inputs to have option-like inputs, while common for command line arguments?

POSIX and GNU have their syntax styles for options. For all the commands that I have seen, they accept option-like inputs as command line arguments. Is it uncommon for a program to accept option-...
  • 92.5k
5 votes
3 answers
2k views

Will it be bad that a function or script name contains dash `-` instead of underline `_`?

If I name a function or script with dash - instead of underline _ between words, would that be bad? For example, function duplicate-me() or duplicate-me.sh. In bash, a variable name can contains ...
  • 92.5k
3 votes
1 answer
239 views

GRUB Partion Naming Conventions

In the GNU GRUB info pages in the Ubuntu 16.04 LTS distro, the naming convention for partitions seemed straight forward with the following definition: (hd0,msdos2)   Here, 'hd' means ...
  • 133
2 votes
1 answer
1k views

What is the numbering convention in .conf files(inside a conf.d)?

Inside the xorg.conf.d/ for example, we have three files: 00-keyboard.conf 10-monitor.conf 30-touchpad.conf I know that the 2-digit number determine the precedence that each file is read so 00-...
  • 23
1 vote
1 answer
441 views

why are the folders under /home/$USER/ typically uppercased when all other folders are lowercased

Other than a short dalliance with Arch, my linux experience has been with Debian/Ubuntu based distros, so maybe that answers my question... I know I can rename /home/$USER/Download to anything I want,...
  • 385
3 votes
1 answer
2k views

What do you call the calling convention behind `int 0x80`?

I know there is a syscall convention but what do you call the calling convention that precedes it that you see when you call to int 80 rather than syscall, like this. mov rax,4 ; system call ...
  • 23.9k
3 votes
1 answer
3k views

FreeBSD vs Linux: performance of kernel calling conventions

From int80h.org, the FreeBSD Assembly Language Tutorial [The Linux Calling] convention has a great disadvantage over the Unix way, at least as far as assembly language programming is concerned: ...
  • 23.9k
2 votes
1 answer
271 views

awk : best practice for loop variable naming [closed]

The following code results in an infinite loop because awk doesn't support local variable in { … } scope. #! /usr/bin/gawk -f function myfunction() { for (i = 5; i < 8; i++){ print "...
2 votes
1 answer
215 views

What is the usual single letter flag denoting an IP address in a commandline option? [closed]

I noticed in most programs that I use that read in IP addresses, they either use no option flag to denote IP address and it is just part of the default input (like ssh, scp, ifconfig, etc...) or it is ...
  • 1,544
13 votes
2 answers
2k views

When to use standard error stream in command-line application?

Is there a guideline when to use the error when writing a command-line application? To my surprise, I didn't find anything when googling it. In particular, the question I'm concerned with right now ...
  • 3,045
17 votes
2 answers
4k views

An official standard / convention for a file extension for shell scripts to source

I was wondering if there is a convention for file type extensions for shell scripts you want to source instead of run. For example: If I want to run this script in a subshell. ./script.sh If I ...
1 vote
2 answers
283 views

Mount point for system-wide USB disk

I have a USB disk connected to a server computer which is mounted when the computer starts. I'm thinking that it's not ideal to mount it under the /media directory since it could potentially lead to a ...
65 votes
8 answers
13k views

Why does Bash's source not need the execution bit?

With Bash's source it is possible to execute a script without an execution bit set. This is documented and expected behaviour, but isn't this against the use of an execution bit? I know, that source ...
  • 1,194
2 votes
0 answers
30 views

epstopdf loose greek symbole

I'm generating a pdf using gnuplot this way: set term postscript color eps enhanced 15 set out '| epstopdf --filter --outfile=SD.pdf' replot set out Whereas the eps file generated contains the ...
  • 121
3 votes
1 answer
143 views

How to determine program success when running a sequence of similar tasks?

I am writing a series of CLI tools that share the same parent command, similar to programs like git. program verb OPTIONS One of the action verbs, install, is designed to git clone as many ...
5 votes
2 answers
2k views

How are log files named?

Or what can we infer from the names of log files? For example, when I want to check the Xorg logs, I find three files: Xorg.0.log Xorg.0.log.old Xorg.1.log You can also find many such log ...
12 votes
2 answers
5k views

Convention/standard on using curly braces around options

The man page for tar in Arch Linux SYNOPSIS section starts with: tar {A|c|d|r|t|u|x}[GnSkUWOmpsMBiajJzZhPlRvwo] [ARG...] I perfectly understand that in this situation it means that exactly one of the ...
  • 129
4 votes
1 answer
423 views

Why do some utilities parse operands before options?

According to several sources, the UNIX utility guidelines specify that operands should always be processed after options: utility_name[OPTIONS][operands...] Some older UNIX utilities are known to ...
3 votes
4 answers
9k views

What is "fs" short for in kernel function "get_fs()"?

There are two Linux kernel functions: get_ds() and get_fs() According to this article, I know ds is short for data segment. However, I cannot guess what "fs" is short for. Any explanations?
  • 1,600
24 votes
1 answer
4k views

What is the number prefix in config files from .d directory

A lot of unix config files in xx.d folders are prefixed by a number, like : $ ls /etc/grub.d/ 00_header 10_linux 30_os-prober 40_custom 05_debian_theme 20_linux_xen 30_uefi-...
0 votes
1 answer
908 views

How are the different kernel naming schemes relate?

I am running Ubuntu 13.10 with the Kernel 3.8.0-030800-generic downloaded from http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.8-raring/ When I want to run for example turbostat or cpupower commands,...
  • 734
10 votes
1 answer
3k views

When should you use subshells vs `xargs`?

Many simple commands using xargs could be rewritten as commands using subshells. For instance, here is something I was using earlier today, to concatenate the ten largest binaries in /usr/bin, written ...
0 votes
1 answer
151 views

KSH conventions scripting [closed]

I'm writing scripts in ksh atm. I'd like to know if there is any "conventions" as for example, always doing "unset" before using a variable, or using typeset to define a new variable, etc.
  • 3,658
4 votes
1 answer
671 views

Linux Icon Naming Conventions

Is there a naming convention in Linux when it comes to application icon filenames? What I'm referring to is the practice of including the icon size in the filename if the application uses multiple ...
9 votes
2 answers
6k views

Where should I mount my external harddrive?

I've got an external harddrive that I'd like to auto-mount. It will be present most times when my laptop boots. Where is the "correct" place to mount it? /media/my-hd: Will litter /media with an ...
  • 1,119
63 votes
2 answers
21k views

Why are shared libraries executable?

Why have almost all the shared libraries in /usr/lib/ have the executable permission bit set? I don't see any use case for executing them. Some do manage to hook-up some form of main function to print ...
55 votes
7 answers
124k views

File extensions for unix shell scripts [closed]

On wikipedia, the article for .sh says: For the .sh file extension type, see Bourne shell. How about other unix shells? I know that the shebang is used inside the file to indicate an ...