Questions tagged [conventions]
Naming conventions and best practice
58
questions
0
votes
0
answers
44
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
74
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 ...
0
votes
2
answers
108
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, ...
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 ...
0
votes
2
answers
79
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
...
0
votes
0
answers
63
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 ...
-1
votes
1
answer
42
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.
1
vote
1
answer
50
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
107
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
170
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 ...
0
votes
1
answer
577
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] [...
2
votes
1
answer
572
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 ...
0
votes
1
answer
174
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 ...
1
vote
1
answer
320
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
824
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 ...
-2
votes
2
answers
319
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
185
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 ...
1
vote
3
answers
806
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
85
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 ...
3
votes
1
answer
553
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
195
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-...
4
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 ...
3
votes
1
answer
217
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 ...
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-...
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 ...
3
votes
1
answer
2k
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: ...
1
vote
1
answer
239
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
186
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 ...
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 ...
16
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
265
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
12k
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 ...
2
votes
0
answers
28
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 ...
3
votes
1
answer
142
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 ...
11
votes
2
answers
4k
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 ...
4
votes
1
answer
406
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?
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
878
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,...
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
147
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.
4
votes
1
answer
638
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 ...
63
votes
2
answers
20k
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
122k
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 ...
24
votes
3
answers
9k
views
Origin of the word cron?
Trying to settle a friendly argument. Is "cron" an acronym for something?
Additionally, did it's current canonical name "cron" originate from something shortened for something like chronos or ...
7
votes
2
answers
961
views
What's the origin of rc, rc.d, share, proc in Linux?
I still can't figure out many abbreviations' origin like rc, rc.d, share, proc...
I've heard someone says rc is "run command", .d is directory, but I'm not sure that's true.
Is there a table ...