10L0I1NUX COMMAND
NORBAHIAH BINTI ZAKARIA
LEILA BINTI ADJA RADJEMAN
IZWAN AFFENDI BIN ADNAN
JABATAN TEKNOLOGI MAKLUMAT
DAN KOMUNIKASI
POLITEKNIK SEBERANG PERAI
eBook PSP | 1001 Linux Command i
LINUX COMMAND
Norbahiah binti Zakaria
Izwan Affendi bin Adnan
Leila binti Adja Radjeman
2021
Jabatan Teknologi Maklumat dan Komunikasi
Politeknik Seberang Perai
©All rights reserved. No part of this publication may be translated or reproduced in
any retrieval system, or transmitted in any form or by any means, electronic,
mechanical, recording, or otherwise, without prior permission in writing from
Politeknik Seberang Perai.
ii eBook PSP | 1001 Linux Command
All rights reserved
No part of this publication may be translated or reproduced in any retrieval system,
or transmitted in any form or by any means, electronic, mechanical, recording, or
otherwise, without prior permission in writing from Politeknik Seberang Perai.
Published by
Politeknik Seberang Perai
Jalan Permatang Pauh, 13500 Permatang Pauh
Pulau Pinang
Tel: 04-538 3322 Fax: 04-538 9266
Email: [email protected] Website: www.psp.edu.my
FB: politeknikseberangperai Ig: politeknikseberangperai
Perpustakaan Negara Malaysia Cataloguing-in-Publication Data
Norbahiah Zakaria, 1980-
1001 Linux Command / Norbahiah binti Zakaria, Izwan Affendi bin Adnan,
Leila binti Adja Radjeman.
Mode of access: Internet
eISBN 978-967-0783-77-2
1. Linux.
2. Operating systems (Computers).
3. Government publications--Malaysia.
4. Electronic books.
I. Izwan Affendi Adnan. II. Leila Adja Radjeman.
III. Title.
005.432
eBook PSP | 1001 Linux Command iii
Acknowledgement
Assalamualaikum…
Bismillahhirahmannirrahim…
We would like to express our gratitude to the many people who saw us through this book; to
all those who provided support, talked things over, read, wrote, offered comments, allowed
us to quote their remarks and assisted in the editing, proofreading and design.
Above all we want to thank our partner and family, and the rest of our family, who supported
and encouraged us despite all the time it took us away from them. It was a long and difficult
journey for them.
Thanks to Head of Department, whom without support this book would never find its way to
been produce and could be used as reference for our students. We wish to thank our
superiors, colleagues, and friends for their helps and encouragement in designing this book
besides improving the plot and topics from time to time.
Last and not least: we beg forgiveness of all those who have been with us over the course of
the years and whose names we have failed to mention. Hoping this book is useful for students
in gaining good result for their subjects.
Norbahiah binti Zakaria
Leila binti Adja Radjeman
Izwan Affendi bin Adnan
iv eBook PSP | 1001 Linux Command
Preface
This book is designed as a reference book for user who enquires information about OSS
besides command in LINUX. It is generally designed for normal daily user in using LINUX as
their operating system in completing their tasks. In addition, this book contains chapters that
cover in theory part and commands.
A command in this book is divided into several chapters. The first chapter is Managing files &
directories, the second chapter covers Managing user and the final chapter cover about
Permission for files and directories
The explanation of command, some of the guidance to use the command in terminal and the
instructions in using Linux command. This book also provides examples in using Linux
commands.
eBook PSP | 1001 Linux Command v
Table of Content Page
Chapter
1
Chapter 1 | MANAGING FILES AND DIRECTORIES 2
1.1 List the Directory 7
1.2 Managing Directory
1.3 View Text File Content
Chapter 2 | MANAGING USER 14
2.1 Root User 17
2.2 Linux User 22
2.3 Linux Group User
Chapter 3 | PERMISSION 28
3.1 Method of Changing the Permission
eBook PSP | 1001 Linux Command 1
Chapter 1 | Managing Files and Directories
1.1 List the Directory
Command ls is used to list the directory content
List the current directory content
$ ls
List the specific directory content
$ ls [directory]
Eg: user2 Ahmad
$ pwd
/home/user1
$ ls /home
user1
1.1.1 List directory content with various options
List the hidden files and directories in current directory
$ ls -a
list the hidden files and directories in specific directory
$ ls -a /home
List directory with the files and directories details
$ ls -l
2 eBook PSP | 1001 Linux Command
1.2 Managing Directory
1.2.1 Types of Directories
There are two types of directories: absolute path, and relative path. Absolute paths begin
with slash. It will refer to the exact location because slash specifies that the path is
described from the root directory. Relative paths do not begin with slash. It will refer to the
subdirectory of current directory.
Table 1.2 Types of directory path
Absolute path /home/user/Music
Eg:
$ cd /home/user/Music
Relative path Music
Eg:
$ cd Music
eBook PSP | 1001 Linux Command 3
1.2.2 Print Working Directory
Command pwd is used to determine the current location of user. This command will display
the absolute path name for current working directory.
$ pwd
/home/user
1.2.3 Create Directory
Command to create new directory
$ mkdir [directory name]
Create new directory with various options.
Creating directory with an absolute path
$ mkdir /home/user/Documents/ [new directory name]
Create directory directly as subdirectory in current directory
$ mkdir [new directory name]
Creating directory and the subdirectories. Option –p allows creating subdirectories with
parent (if do not exist)
$ mkdir -p [directory name_1]/ [directory name_2]
Create directory and define the permission for the directory.
$ mkdir -m [permission level] [new directory name]
4 eBook PSP | 1001 Linux Command
1.2.4 Change Directory
Command cd used to change the user location to another location
$ cd /home
Navigating directory using absolute path and relative path:
using absolute path requires user to enter complete path
$ cd /home/user/Documents
using relative path requires user to know the subdirectory of current directory
$ ls
Documents Videos Music
$ cd Document
Navigating directory using shortcuts:
use -(dash) to refer to the previous directory
$ pwd
/tmp
$ cd /home/user/Documents
$pwd
/home/user/Documents
$ cd -
$ pwd
/tmp
use ~ (tilde) to refers to the root directory
$ pwd
/tmp
$ cd ~
$ pwd
/
eBook PSP | 1001 Linux Command 5
use ..(double period) to refers to the parent of current directory
$ pwd
/home/user/Documents
$ cd ..
$ pwd
/home/user
1.2.5 Rename and Moving Directory
Command mv can be used in renaming directory / file and can be used in moving the
directory / file location
rename directory / file
$ mv [existing filename] [new filename]
2moving the file from one location to other location.
$ mv [file name] /[new location]/[filename]
1.2.6 Remove File and Directory
Command rm used to remove file
$ ls
myFile fileA fileB fileC
$ rm myfile
$ ls
fileA fileB fileC
$ rm file*
6 eBook PSP | 1001 Linux Command
Command to remove directory
$ rmdir [directory name]
Eg :
$ ls
MyDocuments MyMusic MyVideos
$ rmdir MyDocuments
$ ls
MyMusic MyVideos
Command to remove directory with the content
$ rm -r [directory name]
Eg :
$ ls
MyDocuments MyMusic MyVideos
$ rm –r MyDocuments
$ ls
MyMusic MyVideos
eBook PSP | 1001 Linux Command 7
1.3 View Text File Content
Table 1.3 List of command to view text file content in Terminal
COMMAND FUNCTION
cat View text file content and concatenate the file content
tac View text file content in reverse order
head View text file content from the top
tail View text file content from the bottom
less View text file content
more View text file content
head cat
View text file from View text file from
top default 10 lines
top to bottom
tail tac
View text file from
bottom default 10 View text file in
reverse order
lines
8 eBook PSP | 1001 Linux Command
1.3.1 cat Command
View single file content
$ cat<filename>
View multiple file content
$ cat<filename 1><filename 2>
Create new text file using cat command
$ cat> file1
<enter text content>
Ctrl + D to exit
Redirect input file into another file
$ cat file1 > file2
Eg:
$ cat file1
Hello
$ cat file2
Hi world!
$ cat file1 > file2
$ cat file2
Hello
Redirect input file by appending the file
$ cat file1 >> file2
Eg:
$ cat file1
Hello
$ cat file2
Hi world!
$ cat file1 >> file2
eBook PSP | 1001 Linux Command 9
$ cat file2
Hello
Hi world!
Redirect multiple files into single file
$ cat file1 file2 file3 > file4
Eg:
$ cat file1
Hello
$ cat file2
Hi world!
$ cat file3
Have a nice day
$ cat file1 file2 file3 > file4
$ cat file4
Hello
Hi world!
Have a nice day
10 eBook PSP | 1001 Linux Command
1.3.2 tac Command
View file content in reverse order (bottom to top)
$ tac file1
Create new text file using tac command and the content will be created in reverse order.
$ tac> file1
<enter the file content >
Eg:
$ tac> file1 (text entered as below)
Welcome
Hello World
$ cat file1 (The content is actually)
Hello World
Welcome
Redirect input to another file
$ tac file1 > file2
eBook PSP | 1001 Linux Command 11
1.3.3 head Command
View text file from the top with default 10 lines
$ head file1
View text file from the top with entering the number of lines to be print on screen
$ head -2 file1
1.3.4 tail Command
View text file from the bottom with default 10 lines
$ tail file1
View text file from the bottom with entering the number of lines to be printed on screen
$ tail -2 file1
12 eBook PSP | 1001 Linux Command
Tutorial / Exercise FUNCTION
1. State the function of commands below:
COMMAND
mkdir
touch
mv
cp
cd
rm
rmdir
ls
2. What is the differences between mkdir, mkdir –p and mkdir –m?
COMMAND DESCRIPTION
mkdir
mkdir -p
mkdir -m
eBook PSP | 1001 Linux Command 13
3. Give three options of deleting or remove file and directory
a. __________________________________________________
b. __________________________________________________
c. __________________________________________________
4. Give command to create directory with an absolute path:
Instruction: current location at home, want to create directory name testing in
Document which is in user directory.
____________________________________________________________________
____________________________________________________________________
5. Give the description of the commands below.
COMMAND DESCRIPTION
cd
cd ..
cd ~
14 eBook PSP | 1001 Linux Command
Chapter 2 | MANAGING USER
Installing Linux by default will create one normal user account and administrator account. A
user is a person who uses a computer. User account has limit access compared to the
administrator account which can administer the Linux system. Administrator account in
Linux is known as root, root user or superuser. This chapter will explain the Linux user and
the administrator (root) account and function.
2.1 Root User
Root user can administer the system and has access to all command, files and directories.
Term for root itself has several meanings that can confuse the newbie in Linux.
a. root – system administrator
b. / (forward slash) – top directory hierarchy
c. /root – root home directory
2.1.1 Change password
Change root password from primary user
$ sudo passwd root
Enter new UNIX password:
Re Enter new UNIX password:
Required to enter new root password twice to complete the tasks
Change user password
$ sudo passwd
Enter new UNIX password:
Change the current user login password
To become root user in terminal by entering the command below and provide root
password:
su
Password:
eBook PSP | 1001 Linux Command 15
2.1.2 User and Root Environment
The environment user and root indicate by the symbols:
a. # root environment
b. $ user environment
Table 2.1: Differences between root environment and user environment
ROOT ENVIRONMENT USER ENVIRONMENT
#$
Able to execute administrative command Able to execute normal user command
Administer the system Use the system
To enter the other user environment, it must be done via root environment
# su [username]
Symbol # indicates that, the systems are running in administrator or root environment.
Entering -c options enable user to run command that can only be run by root without
entering root environment.
su -c “<command>”
Password:
16 eBook PSP | 1001 Linux Command
2.1.3 Command sudo
Command to change into root environment
$sudo su
will required password from user to enter root environment
$sudo –s
current location represents user home directory
$sudo –l
current location represent /root home directory
Change into another user environment
#sudo [username]
eBook PSP | 1001 Linux Command 17
2.2 Linux User
User and root in Linux system have separate roles with different privileges. User can only
deal with files and tasks that are assigned to that user respectively. Whereby root has the
administrator privileges in administer the system.
2.2.1 Adding User in CLI
Command used to add user
# adduser [username]
Adding new user with various options:
Add user with different user home directory location. Instead of /home/user, change it into
other location
# adduser [username] -d /tmp/[username]
Adding user with specific user ID and group ID. Option -u for UID and -g for GID
# adduser [username] -u 1111 -g 2222
Adding user into various groups using option -G indicate group by separate it using comma.
# adduser [username] -G groupA, groupB, groupC
Adding user without home directory
# adduser [username] -M
18 eBook PSP | 1001 Linux Command
2.2.2 User files and information
User in Linux system can be added via GUI or terminal. Creating user will simultaneously
added. Table 2.2 shows the function for each of the directory during creating new user
account.
a. User account
b. User home directory
c. User primary group
d. UID and GID
Table 2.2: Files involve when creating new user account
FILE NAME FUNCTION
/etc/passwd contains user information
/etc/ group contains group and the members
/etc/shadow contains encrypted user password
/etc/skel contains default user home directory folder
/etc/login.defs configuration file for user account
eBook PSP | 1001 Linux Command 19
Once added new user, the user information will be added in /etc/passwd as below
$ cat /etc/passwd
user:x:1001:1001:user:/home/user:/bin/bash
123 4 5 6 7
The above entry contains a set of seven colon-separated fields; each field has its own
meaning. Table 2.3 below indicate the information and the meaning for each of the
information of user in Linux.
Table 2.3: User information and the meaning
NAME MEANING
1 Username user login name
2 User password that stored in /etc/shadow file in encrypted format.
3 User ID (UID) user identification number
4 Group ID (GID) group identification number and the number stored in
/etc/group file
5 User Info This field is optional and allow you to define extra
6 Home Directory information about the user. For example, user full name.
This field is filled by finger command.
The absolute location of user’s home directory
7 Shell The absolute location of a user’s shell. Eg: /bin/bash
20 eBook PSP | 1001 Linux Command
2.2.3 Adding User in GUI
Adding user using Graphical User Interface (GUI)
In user accounts window needs user authentication to add user account or amend user
data.
Figure 2.1 Pop-up windows in adding new user using GUI
a. Lock symbol to unlock window
b. Enter root password
c. Plus symbol to add new
d. Enter Full name and User name and click Create
eBook PSP | 1001 Linux Command 21
2.2.4 User modification
Usermod command used to modify user account criteria. Commonly used by root to change
user account settings.
# usermod [option] [username]
Modify user with various options as below:
Modify user UID
# usermod -u [new UID] [username]
Modify user home directory
# usermod -d /home/[user new home directory] [user home directory]
Modify user GID
# usermod -g [new gid] [username]
Modify user group
# usermod -G [exist groupname] [username]
Modify to lock user password
# usermod -L [username]
Locking user password will add ! symbol in front of the password
Modify to unlock user password
# usermod -u [username]
Modify user expiry date and lock user password
# usermod -L -e [YYYY-mm-DD] [username]
Modify user shell (available shell can be view in /bin/shells)
# usermod -s [new shell directory] [username]
22 eBook PSP | 1001 Linux Command
2.3 Linux Group User
User in Linux can be categorized into group. By default, each user created in Linux will be
assigned into group.
2.3.1 Adding Group
Command used in adding new group
# groupadd [groupname]
Adding new group with various options as below:
Add group with unique group ID
# groupadd -g [GID] [groupname]
Add group and permit non-unique group ID
# groupadd -g -o [groupname]
2.3.2 Group Modification
Command groupmod used to modify group account criteria.
# groupmod [option] [groupname]
Modify group with various options as below:
Modify group GID
# groupmod -g [new GID] [groupname]
Modify group name
# groupmod -n [group name] [new group name]
eBook PSP | 1001 Linux Command 23
Tutorial / Exercise
1. State the function for each of the command below
COMMAND FUNCTION
adduser
usermod
groupadd
groupmod
userdel
groupdel
24 eBook PSP | 1001 Linux Command e
2. Name each of the category below:
c
ab d f
a. _______________
b. _______________
c. _______________
d. _______________
e. _______________
f. _______________
3. Match the file and the function correctly FUNCTION
FILE NAME
/etc/passwd contains encrypted user password
/etc/ group contains user information
/etc/shadow
/etc/skel contains default user home directory
folder
configuration file for user account
/etc/login.defs contains group and the members
eBook PSP | 1001 Linux Command 25
4. State the function for the usermod command options below.
OPTION FUNCTION
-d
-e
-f
-g
26 eBook PSP | 1001 Linux Command
Chapter 3 | PERMISSION
In Linux, everything is a file. All the files on a system have permissions that allow or prevent
others from viewing, modifying, or executing. The super user "root" can access any files on
the system. Each file has access restriction with permission, user restriction with owner/group
association. Permissions are referred to as bits.
Table 3.1: Permission for file and directory
PERMISSION FILE DIRECTORY
Read View what’s in the file. See what files and subdirectories it
contains.
Write Change the file’s content, Add files or subdirectories to the
rename it, or delete it directory.
Execute Run the file as a program. Change to that directory as the
current directory, search through the
directory, or execute a program from
the directory.
Files and directories in Linux system are assigned an access right to read, write and execute
and the access rights for the owner, group member or others. The nine bits assigned to each
file for permissions define the access that you and others have to your file.
eBook PSP | 1001 Linux Command 27
Permission bits for a regular file appear as below:
uo
-rwxrwxrwxuser other
group
g
The nine-character positions consist of three groups of three characters and different level of
permission.
Each three-character group indicates read (r), write (w) and execute (x) permissions.
a. r (read) file/directory may be opened for read access.
b. w (write) file/directory may be opened for write/edit access.
c. x (execute)file/files in directory may be executed as program.
Permission granted to the user in the system u (user), g (group), o (other) and a (all).
d. u (user) the owner of a file is granted any of the permissions.
e. g (group) group which the file belongs to is granted the permissions.
f. o (other) all others are granted a permission.
g. a (all) defines all user, group, and others.
28 eBook PSP | 1001 Linux Command
List to view the file permission detail
$ ls -l
-rw-rw-r-- user user 10 Sept 10 10:10 file
List to view the file permission detail Sept 10 10:10 folder
$ ls -l Octal
22 4
drwxrwxr-x user user 100 21 2
20 1
Table 3.2 Permission value Binary
100
Permission 010
Read r 001
Write w
Execute x
3.1 Method of Changing the Permission
There are two methods of changing the permission. Both methods are using chmod
command.
a. With the alphabetical / abbreviation
b. With the numeric
3.1.1 chmod command
Command to change file permission
$ chmod [permission grant] [file name]
3.1.1.1 Alphabetical method
Using the alpha designation for permissions preceded by + and - to add or remove. Adding
and removing permissions can be done in a single command.
eBook PSP | 1001 Linux Command 29
Use + to add permission
adding permission to the user
$ ls -l
-rw-rw-r-- user user 10 Sept 10 10:10 file
$ chmod o+w file
adding permission to multiple users
$ ls -l
-rw-rw-rw- user user 10 Sept 10 10:10 file
$ chmod ug+x file
adding multiple permissions (write and execute) to user
$ ls -l
-rw-rw-r-- user user 10 Sept 10 10:10 file
$ chmod o+wx file
adding multiple permissions (write and execute) to multiple users (user and group)
$ ls -l
-r--r--r-- user user 10 Sept 10 10:10 file
$ chmod ug+wx file
$ ls-l
-rwxrwxr-- user user 10 Sept 10 10:10 file
adding multiple permissions to user in combine mode
$ ls -l
-r--r--r-- user user 10 Sept 10 10:10 file
Sept 10 10:10 file
$ chmod u+wx,go+w file
$ ls-l
-rwxrw-rw user user 10
30 eBook PSP | 1001 Linux Command
Use - to remove permission
remove permission to user
$ ls -l
-rwxrw-rw- user user 10 Sept 10 10:10 file
user 10 Sept 10 10:10 file
$ chmod u-x file
$ ls -l
-rw-rw-rw- user
remove permission to the multiple users
$ ls -l
-rwxrwxrw- user user 10 Sept 10 10:10 file
10 Sept 10 10:10 file
$ chmod ug-x file
$ ls -l
-rw-rw-rw user user
remove multiple permissions (read and write) to a single user
$ ls -l
-rwxrwxrw- user user 10 Sept 10 10:10 file
$ chmod o-rw file
$ ls -l
-rwxrwx--- user user 10 Sept 10 10:10 file
remove the permission to the users in combine mode
$ ls -l
-rwxrwxrw- user user 10 Sept 10 10:10 file
Sept 10 10:10 file
$ chmod ug-x,o-w file
$ ls -l
-rw-rw-r-- user user 10
eBook PSP | 1001 Linux Command 31
Use + and - (multiple operators) for multiple operation
adding permission (execute) to multiple users (user and group) and remove permission
(write) to user (other)
$ ls -l
-rw-rw-rw- user user 10 Sept 10 10:10 file
$ chmod ug+x,o-w file
$ ls -l
-rwxrwxr-- user user 10 Sept 10 10:10 file
Use = operator to define exact permission
$ ls -l
-rw-rw-r-- user user 10 Sept 10 10:10 file
10 Sept 10 10:10 file
$ chmod ug=rwx file
$ ls-l
-rwxrwxr-- user user
operator = to insert permission to all users (user, group and other)
$ ls -l
-rw-rw-r-- user user 10 Sept 10 10:10 file
$ chmod a=rwx file
$ ls -l
-rwxrwxrwx user user 10 Sept 10 10:10 file
32 eBook PSP | 1001 Linux Command
3.1.1.2 Numeric method
Table 3.3 Using the numeric method to add and remove the permission
ALPHA NUMERIC PERMISSION
-
x 0 No permission granted
w 1 Execute permission
r 2 Write permission
4 Read permission
TOTAL 7
Assign the value to add permission
$ ls -l
-rw-rw-r-- user user 10 Sept 10 10:10 file
Sept 10 10:10 file
$ chmod 777 file
$ ls -l
-rwxrwxrwx user user 10
Table 3.4 An example of permission
ALPHA NUMERIC PERMISSION
rwxrwxrwx 777 User, group and other has full permission
rwxr-xr-x 755 User can read, write and execute. group and
rw-rw-r-- others can read and execute
664 User and group can read and write. Other can read
only
rw-r--r-- 640 User can read and write and group can read only
eBook PSP | 1001 Linux Command 33
3.1.2 chown command
Command to change file ownership and changing file ownership need to be done by root
user
# chown [new owner grant] [file name]
Change file ownership
# ls -l
# -rw-rw-r-- user user 10 Sept 10 10:10 file
user 10 Sept 10 10:10 file
# chown root file
# ls -l
# -rw-rw-r-- root
3.1.3 chgrp command
Command to change file group ownership
# chgrp [new group to be assigned] [file name]
Change file groupship
# ls –l
# -rw-rw-r-- user user 10 Sept 10 10:10 file
root 10 Sept 10 10:10 file
# chgrp root file
# ls -l
# -rw-rw-r-- root
34 eBook PSP | 1001 Linux Command
Tutorial / Exercise
1. State the value for permission below:
Read - ______________
Write - ______________
Execute - ______________
2. Write the correct permission value for permission details below:
VALUE PERMISSION
User, group can read and write
All user can read only the file
User and group have full permission and other can read
only
User can read and write, group and other can read only
3. Write the correct function for commands below:
COMMAND DETAILS
chmod
chgrp
chown
eBook PSP | 1001 Linux Command 35
4. Pair the command with its correct permission value (Assume the umask is 002)
COMMAND PERMISSION VALUE
chmod g-w,o+w myfile 555
chmod g-rw myfile 644
chmod ug-w mydir 604
chmod u=rw,go=r myfile 777
chmod a=rwx mydir 557
chmod ug-w,o+w mydir 646
5. Create a directory and name it as Work1 with the default permission as follows:
Owner : Can read and write
Group : Can read only
Other : Can read only
Change the class permission of Work1 using command line (in alphabet and numeric)
Owner : Can read, write and execute
Group : Can read, write and execute
Other : Cannot read only
Write the command used to change the permission (in alphabet and numeric)
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
vi eBook PSP | 1001 Linux Command
Reference
Christopher. N. (2019). Linux Bible 10th Edition. New York, US: John Wiley & Sons Inc. (ISBN:
978-1-119-57889-5)
William E. Shotts, Jr. (2019). The Linux Command Line, 2nd Edition: No Starch Press (ISBN-
13:9781593279523)
Jason W. Eckert and triOS College. (2015). CompTIA Linux+ Guide to Linux Certification 4th
Edition. Cengage Learning. (ISBN: 978-1-305-10714-4)
Matthew Helmke, Elizabeth K. Joseph, José Antonio Rey, Philip Ballew; with Benjamin Mako
Hill. (2015). The Official Ubuntu Book 8th Edition. Conanical, Ltd. (ISBN-13: 978-0-13-
390539-7)
Mining. E. (2019). Linux for Beginners: A Practical and Comprehensive Guide to Learn Linux
Operating System and Master Linux Command Line. Contains Self-Evaluation Tests to
Verify Your Learning Level. US: Amazon Digital Services LLC. (ISBN: 1671228081)
POLITEKNIK SEBERANG PERAI e ISBN 978-967-0783-77-2
JALAN PERMATANG PAUH
13500 PERMATANG PAUH
PULAU PINANG
http://www.psp.edu.my