How to run shell programs in vi editor
A Shell provides
you with an interface to the Unix system. It gathers input from you and
executes programs based on that input. When a program finishes executing, it
displays that program's output.
Shell is an
environment in which we can run our commands, programs, and shell scripts.
There are different flavors of a shell, just as there are different flavors of
operating systems. Each flavor of shell has its own set of recognized commands
and functions.
A shell is a
command-line interpreter and typical operations performed by shell scripts
include file manipulation, program execution, and printing text.
The prompt, $, which is called the command
prompt, is issued by the shell. While the prompt is displayed, you can type
a command.
In Unix, there are
two major types of shells −
·
Bourne shell − If you are using a Bourne-type shell,
the $ character is the default prompt.
·
C shell − If you are using a C-type shell, the
% character is the default prompt.
The Bourne Shell has
the following subcategories −
- Bourne shell (sh)
- Korn shell (ksh)
- Bourne Again shell (bash)
- POSIX shell (sh)
The different C-type
shells follow −
- C shell (csh)
- TENEX/TOPS C shell (tcsh)
The original Unix
shell was written in the mid-1970s by Stephen R. Bourne while he was at the
AT&T Bell Labs in New Jersey.
Bourne shell was the
first shell to appear on Unix systems, thus it is referred to as "the
shell".
Bourne shell is
usually installed as /bin/sh on most versions of Unix. For
this reason, it is the shell of choice for writing scripts that can be used on
different versions of Unix.
Editor
ed is the original UNIX text editor, and it’s the most basic you
can work with. It’s also very rarely used, if ever used, by
most people.
emacs
emacs is an awesome editor and it’s historically regarded as the editor
for UNIX systems. Famously vi vs emacs flame wars and
heated discussions caused many unproductive hours for developers around the
world.
nano
nano is a more beginner friendly editor.
Run it using nano <filename>.
You can directly type characters into the file without worrying about
modes.
You can quit without editing using ctrl-X. If you edited the file
buffer, the editor will ask you for confirmation and you can save the edits, or
discard them.
Pico editor
Same as nano
Introduction to Vi(Visual
Editor)
Under Linux, there is a free version of Vi called Vim (Vi Improved). Vi (pronounced vee-
eye) is an editor that is fully in text
mode, which means that all actions are carried
out with the help of text commands. This editor, although it may appear of
little practical use at first, is
very powerful and can be very helpful in case the graphical interface
malfunctions.
Syntax : vi name_of_the_file
Once the file is open, you can move around by using cursors. Press I to switch to insert Mode. Press escape key to switch to command mode,
Basic commands
Description
:q Quit the editor (without saving)
:q! Forces the editor to quit without saving
: wq Saves the document and quits the editor
: filename Saves the document under the specified name
: set nu set serial number to lines
syntax:
chmod permission your-script-name
Examples:
$ chmod +x your-script-name
$ chmod 755 your-script-name
Note: This will set read write execute(7) permission for owner,
for group and other permission is read and execute
only(5).
ls
-l command earlier presented a long of listing file with a line like the
following for each file:
-rw-r--r-- 1 root user
0
2009-04-28 08:26 newfile.txt
Here the first character in the first column (-) indicates that the file is a normal file. The next 9 characters indicate the access
permissions for the file. The next set of 9 characters
is divided into3 groups of 3 cha- racters. Purpose of these characters is as under:
(-) represents no permission
(r) represents 'read'
permission
(w)
represents 'write' permission
(x) represents 'execute'
permission
|
Permission |
Octal number |
Equivalent Symbol |
|
Read |
4 |
r-- |
|
Write |
2 |
-w- |
|
Execute |
1 |
--x |
The three group represents user (owner of the file),
group(to which the owner belongs)
and others (any other user of the system) respectively.
Three characters in each group are for 'read', 'write'
and 'execute' permission respectively.
In our example, the owner has 'read' and
'write' permission for the file and
everyone else has only read
permission. For a normal file, read,
write and execute permissions are
obvious. For a directory, read and write permissions mean that to read the contents of the directory and create new entries in the directory. Execute
permission means that one can search in the directory
but not read from or write to the directory.
You can use the chmod command to change
the access permissions of a file
or a directory. To specify permissions for a file with chmod,
any of the following two methods
can be used.
|
Symbol |
Meaning |
|
u |
User |
|
g |
Group |
|
o |
Other |
|
a |
All (equals to ugo) |
|
+ |
Add Permission |
|
- |
Remove a permission |
|
r |
Read Permission |
|
w |
Write permission |
|
x |
Execute permission |
Syntax: chmod u+x filename
Comments
Post a Comment