Difference b/w Built-in commands and utilities in linux

GiLtY

Golden Member
Sep 10, 2000
1,487
1
0
so far i've gathered that built-in command is part of the shell app, and utilities are separate apps, but is there any other differences?

--GiLtY
 

jhu

Lifer
Oct 10, 1999
11,918
9
81
nope, other than the differences between a built-in function and a separate program. of course, programs such as busybox blur this line even more whereby many separate program functionalities are combined into one program
 

drag

Elite Member
Jul 4, 2002
8,708
0
0
You have different shells.

The commonly used one in linux the bash shell. Other ones are, sh, csh, zsh, etc.

Each shell has a different syntax and a different set of built in commands and features.

Some commands are part of a specific shell, some are seperate programs.

export is a example of a bash built-in command. But ls is a seperate command.

Other features are shell specific. Bash and sh are similar, Bash is a elaberated version of sh, practically.

Bash has stuff like tab button autocomplete, and you can use the arrow buttons to move back and forth to edit commands easier. Sh can't do this.

Csh is favored by lots of people because the syntax for the commands is much like the C language and they find that familar.

Zsh is used by OpenBSD for example.

You can run any shell you want. Most distros have a few shells.

Go to the command line and type in
csh
That will start up the csh shell.

Other then that you have 3.5 levels of programs.

1: You have the shell specific built-ins.

2: You have "tools". These are small programs designed to be used together. For example you have ls, cat, grep, and find are "tools". They can be used by themselves but are mostly usefull when used together

ls -al
shows all files and lots of infos, but:

ls |grep filename
show the info for only filename. Which can save you a lot effort.

3: Then you have applications, which are bigger, comlex programs. However they can still be used WITH tools to do stuff.
Bash is a application.
Mozilla is a application.
etc
etc

3.5: Then you have the .5 which are scripts, these are not real programs, but can be used like them.