Linux: Basic Command Introduction III

1) Command Name: useradd

    Command Derived From: add user

    Command Path: /bin/useradd

    Command Auth: all users

    Command Function: add user into system

    Command Syntax: useradd [username]

    Example:

useradd davy

passwd davy   -> Set the password for user davy.

 

2) Command Name: chgrp

    Command Derived From: chanage file group ownership

    Command Path: /bin/chgrp

    Command Auth: all users

    Command Function: change the g of a specific file or folder

    Command Syntax: chgrp [usergroup] [file or dir]

    Example:

chgrp admin Test.java  -> Change the usergroup of file Test.java as admin.

Will detailed discussed later in User Management Chapter.

 

3) Command Name: umask

    Command Derived From: aUthorize mask

    Command Path: /bin/umask

    Command Auth: all users

    Command Function: display or change the default permission for file or folder.

    Command Syntax: umask [default permission mask]

    Example:

administrator@ubuntu:~$ umask -S
u=rwx,g=rwx,o=rx

 

administrator@ubuntu:~$ umask
0002
0-Special permission

002-User permission(ugo), it just a mask value.

 777

-002

------

775

775 Is the permission for creating new folder.

But as convention, newly created file are not executable.

775-111=664

This is a good practice for isolating computer virus.

 

administrator@ubuntu:~/Test3$ umask 027

administrator@ubuntu:~/Test3$ umask -S
u=rwx,g=rx,o=
We've changed the default permission of new file and new folder

 

------------------File Search Command-------------------------------------------------

4) Command Name: which/whereis

    Command Derived From: where is XXX

    Command Path: /usr/bin/which; /usr/bin/whereis

    Command Auth: all users

    Command Function: search the abs path of a specific command

    Command Syntax: which [commandname]

    Example:

administrator@ubuntu:~/Test3$ which chmod
/bin/chmod

administrator@ubuntu:~/Test3$ which whereis
/usr/bin/whereis
administrator@ubuntu:~/Test3$ which which
/usr/bin/which

administrator@ubuntu:~/Test3$ whereis chmod
chmod: /bin/chmod /usr/share/man/man2/chmod.2.gz /usr/share/man/man1/chmod.1.gz

Whereis command will also list the alias(Details help file for this command) for the command

Will discuss alias in chapter afterwards.

 

5) Command Name: find

    Command Derived From: find

    Command Path: /usr/bin/find

    Command Auth: all users

    Command Function: find file or dir

    Command Syntax: find [search path] [search key word]

    Example:

1) -name (Find file by name)

find /etc -name init   -> Find file named init in dir /etc

find / -name init        -> Bad!!!!

<Tips: Do not find under root path which will consume giant system resource>

Regular Expression is supported. -> * and ?

find /etc -name init*        -> List all files whose name starts with init.

find /etc -name *init*      -> List all files whose name contains init.

find /etc -name init???   -> List all files whose name like initXXX.

 

2) -size (sized by datablock = 512B = 0.5KB) 100MB = 102400KB = 204800block

find /etc -size +204800 (Find files whose size > 100MB  )

find /etc -size -204800  (Find files whose size < 100MB  )

find /etc -size 204800   (Find files whose size == 100MB)

 

3) -user (Find file by owner)

find /etc -user administrator  -> After we've deleted a user, we want to delete all files that owned by this user.

 

4) TIME Related

Measured by day: -ctime, -atime, -mtime

Measured by min: -cmin, -amin, -mmin

c-change; a-access; m-modified

Q: What's the difference between c and m?

A:  c means file properties(u-g-o) have been changed.

     m means file contents have been changed.

-  means less than

+ means greater than

find /etc -mmin -120    -> Find files that have been modified in passed 2 hours.

 

5) -type [l or d or f]

l    --> Means soft link file

d  --> Means directory

f   --> Means binary file

6) -inum [inode number]

Eg.

administrator@ubuntu:~/Test3$ ls -li
total 12
532169 drwxrwxr-x 2 administrator administrator 4096 Sep 23 08:46 after

administrator@ubuntu:~/Test3$ find -inum 532169
./after

 

6) Useful connector in file find.

1) Logical connector: -a means and;  -o means or

2) find ... -exec [command] {} \;

{} --> Means the result set of find ...

\  --> With the same meaning of set define off in oracle.

;  --> Means command end

Take a simple example:

rm /home/administrator/testfile

There will be a prompt asking for confirmation.

Turned out that rm has an alias rm -i

If we don't want to use this alias,

\rm /home/administrator/testfile

That means we don't use alias.

 

1) Find folder whose name is java and list the content of this folder.

administrator@ubuntu:/etc$ find /etc -name java -type d -exec ls -l {} \;
total 112
-rw-r--r-- 1 root root 109379 Mar 14  2012 cacerts-gcj
drwxr-xr-x 3 root root   4096 May  9 03:09 security

2) Find files and folders which were created by nobody and then delete them all.

find /etc -user nobody -exec rm -rf {} \;

 

 

7) Command Name: locate

    Command Derived From: locate files listed in databases

    Command Path: /usr/bin/locate

    Command Auth: all users

    Command Function: search files or dirs

    Command Syntax: locate [key word]

    Example:

administrator@ubuntu:~/Test3$ ls
after  hello.ini  hello.soft  pre  test.ini  Test.java
administrator@ubuntu:~/Test3$ locate test.ini

No entry found.

Q: Why??

A:  Because as the installation of linux os, all the initial file name and file path are stored in its inner db.

      So its search speed is fast, but if we didn't update this db occasionally, we may not find the file.

 

8) Command Name: updatedb

    Command Derived From: update the slocate database

    Command Path: /usr/bin/updatedb

    Command Auth: all users

    Command Function: rebuild the file index database built in

    Command Syntax: updatedb

    Example:

administrator@ubuntu:~/Test3$ sudo updatedb

administrator@ubuntu:~/Test3$ locate test.ini
/home/administrator/Test3/test.ini

Got it!!

 

Locate and updatedb is usually combined used.

Updatedb is a schedule of linux os.

 

9) Command Name: grep

    Command Derived From: ???

    Command Path: /bin/grep

    Command Auth: all users

    Command Function: find specific string in file content and print out this line.

    Command Syntax: grep [keywords] [targetfile]

    Example:

more /etc/services  --> List all web protocol defined, but it is tooooo large.

grep ftp /etc/services  --> List all entries that contains ftp.

你可能感兴趣的:(linux,Basic Command)