Basic Linux Commands

Thảo luận trong 'Góc Linux' bắt đầu bởi hautp, Thg 12 20, 2012.

  1. hautp

    hautp Well-Known Member

    GIT – Here are some basic linux commands to get you started in the wonderful world of Linux and other UNIX variants. All of these commands should work from your command prompt.
    mkdir – make directories
    Usage
    mkdir [OPTION] DIRECTORY
    Options
    Create the DIRECTORY(ies), if they do not already exist.
    Mandatory arguments to long options are mandatory for short options too.
    -m, mode=MODE set permission mode (as in chmod), not rwxrwxrwx – umask
    -p, parents no error if existing, make parent directories as needed
    -v, verbose print a message for each created directory
    -help display this help and exit
    -version output version information and exit
    cd – change directories
    Use cd to change directories. Type cd followed by the name of a directory to access that directory.Keep in mind that you are always in a directory and can navigate to directories hierarchically above or below.
    mv- change the name of a directory
    Type mv followed by the current name of a directory and the new name of the directory.
    Ex: mv testdir newnamedir
    pwd – print working directory
    will show you the full path to the directory you are currently in. This is very handy to use, especially when performing some of the other commands on this page
    rmdir - Remove an existing directory
    rm -r
    Removes directories and files within the directories recursively.
    chown – change file owner and group
    Usage
    chown [OPTION] OWNER[:[GROUP]] FILE
    chown [OPTION] :GROUP FILE
    chown [OPTION] –reference=RFILE FILE
    Options
    Change the owner and/or group of each FILE to OWNER and/or GROUP. With –reference, change the owner and group of each FILE to those of RFILE.
    -c, changes like verbose but report only when a change is made
    -dereference affect the referent of each symbolic link, rather than the symbolic link itself
    -h, no-dereference affect each symbolic link instead of any referenced file (useful only on systems that can change the ownership of a symlink)
    -from=CURRENT_OWNER:CURRENT_GROUP
    change the owner and/or group of each file only if its current owner and/or group match those specified here. Either may be omitted, in which case a match is not required for the omitted attribute.
    -no-preserve-root do not treat `/’ specially (the default)
    -preserve-root fail to operate recursively on `/’
    -f, -silent, -quiet suppress most error messages
    -reference=RFILE use RFILE’s owner and group rather than the specifying OWNER:GROUP values
    -R, -recursive operate on files and directories recursively
    -v, -verbose output a diagnostic for every file processed
    The following options modify how a hierarchy is traversed when the -R option is also specified. If more than one is specified, only the final one takes effect.
    -H if a command line argument is a symbolic link to a directory, traverse it
    -L traverse every symbolic link to a directory encountered
    -P do not traverse any symbolic links (default)
    chmod – change file access permissions
    Usage
    chmod [-r] permissions filenames
    r Change the permission on files that are in the subdirectories of the directory that you are currently in. permission Specifies the rights that are being granted. Below is the different rights that you can grant in an alpha numeric format.filenames File or directory that you are associating the rights with Permissions
    u – User who owns the file.
    g – Group that owns the file.
    o – Other.
    a – All.
    r – Read the file.
    w – Write or edit the file.
    x – Execute or run the file as a program.
    Numeric Permissions:
    CHMOD can also to attributed by using Numeric Permissions:
    400 read by owner
    040 read by group
    004 read by anybody (other)
    200 write by owner
    020 write by group
    002 write by anybody
    100 execute by owner
    010 execute by group
    001 execute by anybody
    ls – Short listing of directory contents
    -a list hidden files
    -d list the name of the current directory
    -F show directories with a trailing ‘/’
    executable files with a trailing ‘*’
    -g show group ownership of file in long listing
    -i print the inode number of each file
    -l long listing giving details about files and directories
    -R list all subdirectories encountered
    -t sort by time modified instead of name
    cp – Copy files
    cp myfile yourfile
    Copy the files “myfile” to the file “yourfile” in the current working directory. This command will create the file “yourfile” if it doesn’t exist. It will normally overwrite it without warning if it exists.
    cp -i myfile yourfile
    With the “-i” option, if the file “yourfile” exists, you will be prompted before it is overwritten.
    cp -i /data/myfile
    Copy the file “/data/myfile” to the current working directory and name it “myfile”. Prompt before overwriting the file.
    cp -dpr srcdir destdir
    Copy all files from the directory “srcdir” to the directory “destdir” preserving links (-poption), file attributes (-p option), and copy recursively (-r option). With these options, a directory and all it contents can be copied to another dir
    ln – Creates a symbolic link to a file.
    ln -s test symlink
    Creates a symbolic link named symlink that points to the file test Typing “ls -i test symlink” will show the two files are different with different inodes. Typing “ls -l test symlink” will show that symlink points to the file test.
    locate - A fast database driven file locator.
    slocate -u
    This command builds the slocate database. It will take several minutes to complete this command.This command must be used before searching for files, however cron runs this command periodically on most systems.locate whereis Lists all files whose names contain the string “whereis”. directory.
    more - Allows file contents or piped output to be sent to the screen one page at a time
    less - Opposite of the more command
    cat - Sends file contents to standard output. This is a way to list the contents of short files to the screen. It works well with piping.
    cat files - Prints the contents of the specified files.
    whereis - Report all known instances of a command
    wc - Print byte, word, and line counts
    bg
    bg jobs Places the current job (or, by using the alternative form, the specified jobs) in the background, suspending its execution so that a new userprompt appears immediately. Use the jobs command to discover the identities of background jobs.
    cal month year - Prints a calendar for the specified month of the specified year.
    clear - Clears the terminal screen.
    cmp file1 file2 - Compares two files, reporting all discrepancies. Similar to the diff command, though the output format differs.
    diff file1 file2 - Compares two files, reporting all discrepancies. Similar to the cmp command, though the output format differs.
    dmesg - Prints the messages resulting from the most recent system boot.
    fg
    fg jobs - Brings the current job (or the specified jobs) to the foreground.
    file files - Determines and prints a description of the type of each specified file.
    find path -name pattern -print
    Searches the specified path for files with names matching the specified pattern (usually enclosed in single quotes) and prints their names. The findcommand has many other arguments and functions; see the online documentation.
    finger users - Prints descriptions of the specified users.
    free - Displays the amount of used and free system memory.
    ftp hostname
    Opens an FTP connection to the specified host, allowing files to be transferred. The FTP program provides subcommands for accomplishing file transfers; see the online documentation.
    head files - Prints the first several lines of each specified file.
    ispell files - Checks the spelling of the contents of the specified files.
    kill process_ids
    kill – signal process_ids
    kill -l
    Kills the specified processes, sends the specified processes the specified signal (given as a number or name), or prints a list of available signals.
    killall program
    killall – signal program
    Kills all processes that are instances of the specified program or sends the specified signal to all processes that are instances of the specified program.
    mail - Launches a simple mail client that permits sending and receiving email messages.
    man title
    man section title - Prints the specified man page.
    ping host - Sends an echo request via TCP/IP to the specified host. A response confirms that the host is operational.
    reboot - Reboots the system (requires root privileges).
    shutdown minutes
    shutdown -r minutes
    Shuts down the system after the specified number of minutes elapses (requires root privileges). The -r option causes the system to be rebooted once it has shut down.
    sleep time - Causes the command interpreter to pause for the specified number of seconds.
    sort files - Sorts the specified files. The command has many useful arguments; see the online documentation.
    split file - Splits a file into several smaller files. The command has many arguments; see the online documentation
    sync - Completes all pending input/output operations (requires root privileges).
    telnet host - Opens a login session on the specified host.
    top - Prints a display of system processes that’s continually updated until the user presses the q key.
    traceroute host - Uses echo requests to determine and print a network path to the host.
    uptime - Prints the system uptime.
    w - Prints the current system users.
    wall - Prints a message to each user except those who’ve disabled message reception. Type Ctrl-D to end the message.

    Viewing, copying, moving and deleting files
    ls Display the contents of the current directory
    ls -a Display also hidden files and hidden directories

    cp filename /path/dir_name Copy filename into directory /path/dir_name
    cp -r dir_name /path/dir_name2 Copy the entire dir_name into /path/dir_name2
    cp filename1 filename2 /path/dir_name Copy filename1 and filename2 into /path/dir_name

    rm name Remove a file or directory called name
    rm -r name Remove an entire directory as well as its included files and subdirectories

    mv filename /path/dir_name Move filename into /path/dir_name
    mv filename1 filename2 Rename filename1 to filename2

    cat filename Display filenames contents

    more filename Display filename in pages. Use spacebar to view next page

    head filename Display filenames first 10 lines
    head -15 filename Display filenames first 15 lines

    tail filename Display filenames last 10 lines
    tail -15 filename Display filenames last 15 lines

    pwd Display current directory

    cd /path/dir_name Change to directory /path/dir_name
    cd .. Go 1 directory up

    mkdir dir_name Create directory dir_name
    rmdir dir_name Delete directory dir_name


    Finding files and text within files
    updatedb Update (create first time used) a database of all files under the root directory /
    locate filename Find file filename searching in the database

    find / -name filename Starting from the root directory search for the file called filename
    find / -name *filename Same as above but search for file containing the string filename

    grep string /path/dir_name Starting from /path/dir_name search for all files containing string

    which application_name Search $path for application app_name
    whereis application_name Search $path, man pages and source files for application_name


    Archived files
    Decompress
    tar -xzf filename.tgz Decompress tzg file
    tar -xzf filename.tar.gz Decompress tar.gz file
    tar -xjf filename.tar.bz2 Decompress tar.bz2 file


    Compress
    tar -czf filename.tar /path/dir_name Compress directory /path/dir_name to filename.tar
    gzip -c filename > filename.gz Compress /path/dir_name to filename.tar.gz
    bzip2 -c filename > filename.bz2 Compress /path/dir_name to filename.tar.bz2


    Using rpm files
    rpm -hiv package.rpm Install rpm called package.rpm
    rpm -hiv –force package.rpm Install rpm called package.rpm by force
    rpm -hUv package.rpm Upgrade rpm called package.rpm
    rpm -e package.rpm Delete rpm called package.rpm
    rpm -qpil package.rpm List files in not-installed rpm called package.rpm
    rpm -ql package.rpm List files in installed rpm called package.rpm
    rpm -q str List installed rpms containing the string str
    rpm -qf /path/application_name Display the rpm that contains application application_name


    Starting and Stoping
    startx Start the X system
    shutdown -h now Shutdown the system now and do not reboot
    halt Same as above
    shutdown -r now Reboot
    reboot Same as above
    shutdown -r +10 Reboot in 10 minutes



    Mounting filesystems
    mount -t vfat /dev/sd(a)(1) /mnt/c_drive Mount the first partition 1 of the first hard disk drive a which is in fat32 vfat dormat under /mnt/c_drive directory
    mount -t iso9660 /dev/cdrom /mnt/cdrom Mount cdrom under /mnt/cdrom directory

    umount /mnt/hda1 Unmout the above


    User administration
    users Display users currently logged in
    adduser username Create a new user called username
    passwd username Define password for user called username
    who List logged-in users
    whoami Display current user
    finger username Displays info about user username
    su Log in as root from current login
    su - Log in as root from current login and take root’s path
    exit Exit from console login (ie, logout).


    Processes
    command Execute command in the foreground
    command & Execute command in the background
    ctrl+z Suspend a program
    ctrl+c Interrupt a program
    ps List all processes
    kill -9 pid Kill process with id pid
    top Monitor processes in real time


    Networking
    hostname List the system’s hostname
    ifconfig Set/Display network information
    host ip Resolves ip’s hostname
    ping ip/hostname Check if ip/hostname is reachable
    traceroute ip/hostname Find network path to ip/hostname


    System Information
    uname -a General system information
    fdisk -l List partition tables
    cp filename /path/dir_name Copy filename into directory /path/dir_name
    df -T -h List filesystem disk space usage
    lspci List PCI devices
    lsusb List USB devices
    free -m Display RAM+Swap usage


    Program Compile
    gcc -o output file.c Compile a C program
    ./output Run a C program you have compiled
    g++ -o output file.cpp Compile a C++ program
    ./output Run a C++ program you have compiled
    ./configure && make && su -c ‘make install’ Configure, compile and install a program with Makefile
     

Chia sẻ trang này