zoukankan      html  css  js  c++  java
  • UNIX常用命令

    UNIX常用命令

     

    Unix Development Environment

    l  The Basic Knowleage

    l  The General Command

    l  Unix Shell

    l  MakeFile

     

    The Basic Knowledge

        Unix/Linux systems are multi-user and multi-tasking

    l  Have multiple users on the same system

    l  Run multiple programs, seemingly simultaneously

    l  Maintain permissions that determine which users have access to whick files and programs

    l  Regulate the amount of disk space each user can use

    l  Store user-specific settings in “hidden” file

     

    Logging In

    l When you first connect to one of the Unix computers you will see the prompt:

    l Login: 

    At the login : prompt, type in your username Password

    Once you have typed in your username you will be prompted to type in your password

     

     

    Initialization Files

    When you log in the Unix/Linux login program finally, starts up a command “shell”

     

    Users do not deal with the operating system directly. Most of your interaction with a Unix system takes place in a shell, a program that is run every time you log in, and displays the “$” prompt. The shell is known as command interpreter, you give it commands, and it runs them.

     

    Shell

    l Sh

    l  Bourne Shell

    l Ksh

    l  Korn Shell

    l Csh

    l  C shell based on C language

    l Bash

    l  Born Again Shell

    l Tcsh

    l  another version of C shell

     

    Using the System

    Finally you are logged in! You will see a prompt like one of the following:

    $/#

    Just waiting fo you to type something. We will user $ to indicate the computer’s “ready” prompt.

     

    Okey, let’s try a simple command.

     

    ls

    ls is the program to list files in a directory. Just plain ls won’t list hidden files(files whose names start with ``.’’, like .login). Now try typing:

    ls -a

     

    pwd(print working directory)

    To find out which directory you are in, type:

    pwd

    This will show you the full path to your current working directory, relative to the root directory(/).

     

    Rm(remove files or directories)

    The command rm file will remove the specified file.

    Some useful options for rm include

    rm -i ( interactive mode - you will be prompted to comfirm file deletion)

    rm -f ( force remove - overrides interactive mode and removes file without a prompt)

    rm -r (recursive - remove the contents of directories recursively)

     

    cp(copy files and directories)

    To copy a file, do:

    cp oldfilename newfilename

     

    Or to copy a file to a new directory, while keeping the old filename do:

    cp filename /directoryname/ 

     

    To ensure your don’t overwrite any existing files you can use the ‘-i’ option:

    cp -i oldfilename newfilename

     

    This command will prompt you to confirm if there is already a file with the name newfilename.

     

    mv (move files)

    This command allows you to rename a file as in:

    mv oldfilename newfilename

    Or to move a file to a new directory:

    mv filename directoryname/

    As with cp, it is a good idea to use the ‘-i’ option with mv, so you don’t mistakenly overwrite your existing files.

     

    The special directory

    You may have noticed when you typed ls –a that there were listings dot(.) and dot-dot(..). These represent your current working directory(.) and it’s parent directory(..).

    For example , typing 

    cd ..

    cd .

    cp /vol/examples/ tutorial/science.txt .

    cd ~ will always bring you back to your home directory.

    cd ~/homework will bring you to the ‘homework’ directory.

     

    The character * is called a wildcard and will match against none of more character(s) in a file or directory name.

    For example, if you type 

    ls *h

    You should get a list of all files and directories starting with the letter h.

     

    Similarly if you type:

    ls *.cpp

     

    The ? character is similar to the * character, except that ? will match exactly one character, For example:

    ls ?an will match ‘man’ but not ‘stan’!

     

    Display the contents of a file on the screen

    clear (clear screen)

    Before you start the next section, you may like to clear the terminal window of the previous commands so the output of the following commands can be clearly understood.

    At the prompt, type

    clear

    This will clear all text and leave you with the % prompt at the top of the window.

     

    cat (concatenate)

    The command cat can be used to display the contents of a file on the screen. Type:

    cat science.txt

     

    as you can see, the file is longer than the size of the window, so it scrolls past making it unreadable.

    less

    The command less writes the contents of a file noto the screen a page at a time, type:

    less science.txt

    Press the [space-bar] if you want to see another page, type [q] if you want to quit reading.

     

    head

    The head command writes the first ten lines of a file to the screen.

    First clear the screen then type

    head science.txt

     

    tail

    the tail command writes the last ten lines of a file to the screen. Clear the screen and type:

    tail science.txt

     

    Searching the contents of a file

    Simple searching using less

    Using less, you can search though a text file for a keyword(pattern). For example, to search through science.txt for the word ‘science’, type

    less science.txt

    Then still in less(i.e. don’t press [q] to quit), type a forward slash [/] followed by the word to search.

    As you can see, less finds and highlights the keyword. Type [n] to search for the next occurrence of the word.

     

    grep

    It searches files for specified words or patterns. First clear the screen, then type

    grep science science.txt

    As you can see, grep has printed out each line containing the word science.

     

    Try typing

    grep Science science.txt

    The grep commands is case sensitive; It distinguishes between Science and science.

     

    To ignore upper/lower case distinctions, use the -i option, i.e. Type

    grep -i science science.txt

     

    To search for a pharse or pattern, you must enclose it in single quotes. For example to search for spinning top. Type

    grep -i ‘spinning top’ science.txt

     

    Some of the other options of grep are:

    -v

     display those lines that do NOT match

    -n

     precede each maching line with the line number

    -c

     print only the total count of matched line

     

    Don’t Forget , you can use more than one option at a time, for example, the number of lines without the words science of Science is:

    grep -ivc science science.txt

     

     

    wc (word count)

    A handy little utility is the wc command, short for word count. To do a word count on science.txt, type 

    wc -w science.txt

    To find out how many lines the file has, type

    wc -l science.txt

     

    Redirecting the output

    We use the > symbol to redirect the output of a command. For example, to create a file called list 1 containing a list of fruit, type

    cat > list1

    The type in names of some fruit. Press [Return] after each one.

    Pear

    Banana

    Apple

    ^D(Control D to stop)

     

    What happens is the cat command reads the standard input (the keyboard) and the > redirects the output, which normally goes to the screen, into a file called list1

     

    To read the contents of the file, type

    cat list1

     

    The form >> appends standard ouput to a file, So to add more items to the file list1, type

    cat >> list1 

    Then type in names of more fruit

    Peach

    Grape

    Orange

    ^D(Control D to stop)

    To read the contents of the file, type

    cat list1

     

    Create another file called list2 containing the following fruit: orange, plum, mango,grapefruit.

     

    We will now use the cat command to join (concatenate ) list1 and list2 into a new file called biglist. Type

    cat list1 list2 > biglist

     

    What this is doing is reading the contents of list1 and list2 in turn, then outputing the next to the file biglist

     

    To read the contents of the new file, type

    cat biglist

     

    File system security

    In your unix stuff directory, type

    ls -l (l for long listing!)

     

    You will see that you now get lots of details about the contents of your directory, similar to the example below.

     

    Each file(and directory) has associated access rights, which may be found by typing ls -l

     

    In the left-hand column is a 10 symbol string consisting of the symbols d,r,w,x,-. If d is present , it will be at the left hand end of the string, and indicates a directory: otherwise - will be the starting symbol of the string.

     

    The 9 remaining symbols indicate the permissions for the user that owns the file( or directory)

     

    The middle group gives the permissions for the group of people to whom the file(or directory) belongs.

     

    The rightmost group gives the permissions for all others.

     

    For examples

    -rwxrwxrwx a file that everyone can read, write and execute (and delete).

    -rw------- a file that only the owner can read and write: no-one else can read or write and no-noe has execution rights(e.g. Your mailbox file).

     

    Change access right

    Chmod (changing a file mode)

    Only the owner of a file can use chmod to change the permissions of a file, the options of chmod are as follows:

    u

    user

    g

    group

    o

    other

    a

    all

    r

    read

    w

    write(and delete)

    x

    execute(and access directory)

    +

    add permission

    -

    take away permission

    For example, to remove read write and execute permissions on the file biglist for the group and others, type

    Chmod go-rwx biglist

     

    This will leave the other permissions unaffected.

    To give read and write permissions on the file biglist to all

    Chmod a+rw biglist

     

     

    The protection bits

    u

    g

    o

    rw+

    r--

    ---

    6

    4

    0

    The file has mode 640. The first bits, set to r+w(4+2) in our example, specify the protection for the user who owns the files(u). The user who owns the file can read or write(which includes delete) the file.

     

    The next trio of bits, set to 4, or r in our example, specify access to the file for other users in the same group as the group of the file.

     

    Finally, all other users are given no access to the file.

     

    Process

    A process is an executing program identified by a unique PID(process identifier). To see information about your processes, with their associated PID and status, type

    Ps

    To kill off the process, type

    Kill PID_number

    And then type ps again to see if it has been removed from the list.

     

    Other command

    find . -name “circle.h” -print

    who am i

    which which

    finger

    date

    history 3

     

    Text Editor

    vi

    The vi editor has powerful features to aid programmers.

    The vi editor has two modescommand and insert.

    The command mode allows the entry of commands to manipulate text.

    The insert mode puts anything typed on the keyboard into the current file.

    Vi initially starts in command mode.

     

    Open a file in vi by typing either of :

    Vi filename(opens specified file) here are some basic vi commands:

    Command mode

    i, a

    Enter insert mode

    :w

    Save the file without exiting

    :q!

    Quit without saving

    :wq

    Quit and save

    :x, ZZ

    Quit and save the file

    dd

    Delete the line where the cursor is located

    x

    Delete the character

    Set number

    Set the line number

    Set nonumber

    Cancel line number

    ESC

    Enter command mode

     

    Unix Shell

    The kernel

    the kernel of UNIX is the hub of the operating system: it allocates time and memory to programs and handles the filestore and communications in response to system calls.

    The Shell

    The shell acts as an interface between the user and the kernel. When a user logs in, the login program checks the username and password, and then starts another program called the shell.

     

    The shell is a command line interpreter(CLI), it interprets the commands the user types in and arranges for them to be carried out. The commands are themselves programs: when they terminate, the shell gives the user another prompt(% on our system).

     

    As an illustration of the way that the shell and the kernel work together, suppose a user types rm myfiles(which has the effect of removing the file myfile).

     

    The shell searches the filestore for the file containing the program rm, and then requests the kernel, through system calls, to execute the program rm on myfile.

     

    When the process rm myfile has finished running, the shell then returns the UNIX prompt % to the user, indicating that it is waiting for further commands.

     

    Bash

    For our first shell script, well just write a script which says Hello World.

     

    Create a file(firsh.sh) as follows: firsh.sh

     

    #!/bin/bash

    #This is a comment!

    echo Hello World # this is comment, too!

     

    The first line tells Unix that file is to be executed by /bin/bash.

     

    The second line begins with a special symbol:#. This marks the line as a comment, and it is ignored completely by the shell.

     

    The third line runs a command : echo, with two parameters, or arguments - the first is Hello; the second is World.

     

    The # symbol still marks a comment; the # and anything following it is ignored by the shell.

     

    Now run chmod 755 first.sh to make the text file executable, and run ./first.sh.

     

    Your screen should then look like this:

    % chmod 755 first.sh

    % ./first.sh

    Hello World

    %

     

    You could even just run:

    % echo Hello World

    Hello World

    %

     

    Variable

    There must be no spaces around the = sign: VAR=value works; VAR = value doesnt work.

     

    var.sh

    #!/bin/bash

    MY_MESSAGE=hello world

    Echo $MY_MESSAGE

     

    Markfile

    To simplify compiling your code, we will be using a Makefile to compile our code.

     

    Make is a UNIX program that helps programmers efficiently build projects.

     

    For example:

    $make

    $make clean

    $make install

     

     

  • 相关阅读:
    vue-router 路由拦截 beforeEach 添加静态路由 与 动态添加路由
    elementUI el-upload 根据上传的图片高度,进行自适应宽度
    vue 中 字符串分两行显示
    MySQL中的<=>
    Spring mvc再启动时候会打印项里面的所有路径
    一次解决前后台交互问题
    数据库表分区,分表
    支付宝接口
    打印js中一个对象的所有属性的值
    var
  • 原文地址:https://www.cnblogs.com/zfc2201/p/4084956.html
Copyright © 2011-2022 走看看