zoukankan      html  css  js  c++  java
  • Linux快速上手

    1.Linux系统架构

      内核(kernel)

        内存管理(mm)

          Linux内存特性无论物理内存有多大,Linux 都将其充份利用,将一些程序调用过的硬盘数据读入内存,利用内存读写的高速特性来提高Linux系统的数据访问性能

        进程管理(sched)

          Linux使用了比较简单的基于优先级的进程调度算法选择新的进程

          Linux 中常见的进程间通讯机制有信号、管道、共享内存、信号量和套接字等

        设备驱动程序(drivers)

          设备驱动程序运行在高特权级的处理器环境中

        文件系统和网络管理等(fs,net)

          

      shell

        shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行,是一个命令解释器

        BASH:是GNU的Bourne Again Shell,是GNU操作系统上默认的shell,大部分linux的发行套件使用的都是这种shell

      文件系统

        挂载(mount)

        Linux 中最普遍使用的文件系统是 Ext2,它也是 Linux  土生土长的文件系统。但 Linux  也能够支持 FAT、VFAT、FAT32、MINIX 等不同类型的文件系统

      应用程序

        略

    2.Linux基本命令

    man

    man <COMMAND NAME> //查看指令的用户手册

    ls

    ls [OPTION] [FILE] //以当前目录开始,向下列出所有文件
    -a :全部的档案,连同隐藏档案( 开头为 . 的档案) 一起列出来
    -d :仅列出目录本身,而不是列出目录内的档案数据 
    -f :直接列出结果,而不进行排序 (ls 预设会以档名排序) 
    -F :根据档案、目录等信息,给予附加数据结构,例如: 
    *:代表可执行档; /:代表目录; =:代表 socket 档案; |:代表 FIFO 档案; 
    -h :将档案容量以人类较易读的方式(例如 GB, KB 等等)列出来; 
    -i :列出 inode 位置,而非列出档案属性; 
    -l :长数据串行出,包含档案的属性等等数据(类似于windows详细信息); 
    -r :将排序结果反向输出,例如:原本档名由小到大,反向则为由大到小; 
    -R :连同子目录内容一起列出来; 
    -S :以档案容量大小排序! 
    -t :依时间排序 
    View Code

    touch

    touch [OPTION] [FILE] //创建空文件[FILE]
    -t :后面可以接时间,格式为[YYMMDDhhmm] 创建时间
    View Code

    cat

    cat [OPTION] [FILE] //将[FILE]或标准输入组合输出到标准输出。
     -A, --show-all 
      -b, 对非空输出行编号
      -E, 在每行结束处显示 $
      -n, 对输出的所有行编号
      -s, 不输出多行空行
    如果[文件]缺省,或者[文件]为 - ,则读取标准输入。
    View Code

    mkdir

    mkdir [OPTION]  [DIR] //若指定目录不存在则创建目录
     -p:需要时创建目标目录的上层目录,即使这些目录已存在也不当作错误处理
     -v:每次创建新目录都显示信息
    View Code

    rmdir 

    rmdir [OPTION]  [DIR]  //删除非空的目录
     -p: 删除指定目录及其上级文件夹
      -v:输出处理的目录详情
    View Code

    mv

    mv [OPTION] [-T] [SourceFILE] [DestinationFILE] //将源文件重命名为目标文件
    mv [OPTION] [SourceFILE]  [DIR] //将源文件移动到指定目录
     -f:覆盖前不询问
     -i: 覆盖前询问
     -n:不覆盖已存在文件
    如果您指定了-i、-f、-n 中的多个,仅最后一个生效。
     -u:  只在源文件文件比目标文件新,或目标文件不存在时才进行移动
     -v:详细显示进行的步骤
    View Code

    cp

    cp [OPTION] [FILE]/[DIR] [DIR] //复制
    -b 诺删除或者覆盖目标文件将对文件进行备份,备份的文件以备份的字符结尾
    -f 强制复制
    -i 交互模式,覆盖目标文件之前要进行询问
    -r 处理指定目录以及目录的子目录下的所有文件
    -u 只在源文件更新时进行复制
    -v 运行时显示详细的处理信息
    -x 只在源文件和目标文件文件系统类型相同时才复制
    View Code

    mount

    mount [SYSTEM] [DIR] //挂载
    例1
    [root@linux ~]# mount -l    #列出所挂载的系统
    [root@linux ~]# mount /dev/sda1 /media/usb   #挂载u盘
    例2
    # mount -o username=xiexiangrong,password=xxxxxx  -l //192.168.6.2/soft /mnt  #访问windows共享文件
    -o username= windows user,password=访问密码
    -l //网络地址/共享文件
    View Code

    3.程序员常用命令(如需使用请至http://linux.51yip.com/查询)

    grep //使用正则表达式搜索文本,并把匹配的行打印出来

    cut //在文件的每一行中提取片在每个文件FILE的各行中, 把提取的片断显示在标准输出.

    sed //对文件内容进行处理

    tar //用来压缩和解压文件。

    find //查找目录和文件

    diff //比较两个文件

    chmod //更改文件属性

    4.Shell编程

      介绍

      *shell脚本程序,简称shell脚本或shell程序,是使用系统提供的命令编写的文本文件,该文件具有可执行的属性,能够帮助系统管理员自动管理系统。在Linux的发行版本中就包含了很多的shell程序,这些脚本有的是为了完成系统参数的设置,例如/etc/profile等文件;有的是为了完成某项系统服务的启动工作,例如/etc/rc.d/init.d目录下的所有脚本。

      应用

      随着Linux图形界面的日益完善,依靠GNOME或KDE提供的图形界面已经能够完成大部分基本的应用。但是图形界面的功能是有限的,只能完成一些可以预见的功能。例如,如果需要大批量地创建系统用户,使用图形界面是非常耗时的。此时就可以选择使用shell脚本程序。Linux的shell程序是一个非常有用且很容易掌握的工具,可以帮助用户轻松地完成繁重的任务,提高使用和维护系统的效率。另外,Linux的图形界面也是通过shell脚本解释启动的,很多应用程序本身就是一个shell程序。

      解释器 

    *  shell程序与C语言等高级语言程序不同,shell程序是通过shell命令解释器解释执行的,不生成二进制的可执行代码,这一点和DOS下的批处理文件类似。不同的shell解释器对应的shell程序的语法也不完全相同。由于bash是Linux下默认提供的shell解释器,并且bash也是使用最广泛、与其他shell兼容性最好的解释器,因此下面介绍的shell程序的知识都是基于bash解释器的。

      一个简单的Shell程序

    一个简单的shell程序一般需要三个步骤

    (1)利用文本编辑器创建脚本内容。

    命令提示符下使用vi Hello.sh,创建文本文件Hello.sh,在系统打开的文本编辑窗口中输入如下的语句(其中行首编号除外)。输入完毕后保存退出。

    1 #!/bin/sh
    2 echo `date +%Y%m%d`

    一个合法的shell脚本程序,都是以shell解释器声明开始的,即在shell程序的第一行。其中“#!”后面的“/bin/bash”,表示实际使用的解释器。

    例如,以perl作为shell解释器,则可以该声明可以是“/usr/bin/perl”。注:与其他行不同,这里前面虽然以“#”开头,但不是注释行。

    (2)使用“chmod”命令赋权,设置脚本的可执行属性。

    Hello.sh文件编辑完毕并保存后,在命令提示符下执行如下命令,设置其可执行的属性。

    chmod a+x Hello.sh

    (3)执行脚本。

    shell脚本的执行方法也很简单,只需要在命令提示符下输入如下命令即可:                

     ./ Hello.sh

            或者:

    sh Hello.sh

      vi编辑器  

      vi有两种工作模式:

        编辑模式:用来输入和编辑文件的模式,屏幕上会显示用户的键入,按键不是被解释为命令执行,而是作为文本写到用户的文件中。

        指令模式:用来编辑、存盘和退出文件的模式。

      从指令模式切换到编辑模式,则可以按“Insert”键或“i”键,从编辑模式切换到指令模式,可按“Esc”键。  

      vi的启动和退出

        启动vi

                在系统图示字符下键入“vi”+“空格”+“文件名”。

                    如:vi test.txt   注:vi可以自动载入所要编辑的文件或是开启一个新文件。

        

        退出vi

        在指令模式下键入如下命令可以退出vi。

        :q 如果用户只是读文件的内容而未对文件进行修改,可以在命令模式下输入“:q”退出vi。

        :q! 如果用户对文件的内容作了修改,又决定放弃对文件的修改,则用“:q!”命令。

        :w! 强行保存一个vi文件,如果该文件已存在,则进行覆盖。

        :wq 保存文件并退出vi。

        ZZ 快速保存文件的内容,然后退出vi。功能和“wq”相同。

        :w filename 相当于“另存为”。

         :n,mw filename 将第n-m行的文本保存到指定的文件filename中。

    *  chmod命令  

        权限设定字符串。
        格式:[所有者][+-=][权限]
        所有者:

            u:用户     g:组     o:其它      a:所有用户(默认)

        权限:

            r:读    w:写    x:执行     s:设置用户(组)的ID号

            u:用户的当前权限          g:组的当前权限

            o:其他用户的当前权限

        +-=

          +:增加权限

              -:删除权限

            =:重新分配权限

        注:mode部分还可以用3位0~7数字代替

      Shell编程语法

        变量、控制结构和函数

        弱语言、串变量

      

  • 相关阅读:
    通信原理
    java实现聊天室的简单实现
    计算机网络笔记——第四章、网络层
    泛型高级之通配符
    看文档总结
    HashSet源码解析
    HashTable源码解析
    计算机网络笔记——第三章、数据链路层
    Collection集合的功能
    第六章 应用层
  • 原文地址:https://www.cnblogs.com/liuxiaoke/p/4323654.html
Copyright © 2011-2022 走看看