zoukankan      html  css  js  c++  java
  • linux 命令

    必要的分区:根分区/和swap分区。  其他分区根据需要而定。  swap分区是不需要挂载点的。
    
    linux的组成:内核,shell(用户与系统交互的界面),文件系统,应用程序
    
    乌班图,redhat,centos都是基于linux内核开发的发行版。
    
    ls    ls *.conf    ls h*.conf   ls -a    ls可以正则查找
    
    //输出重定向,1个大于号2个大于号,
    cat <test1>test2  //cat 输入重定向符 输入文件名  输出重定向符 输出文件名,把test1里面的文件复制到test2。可以把命令的输出到文件中去。
    ls >test3    //ls的输出不到文件而是到test3文件中去。
    ls >>test3   //一个大于号是覆盖之前的内容,2个大于号是内容追加到文件末尾。
    defergfr 2>test3       //错误重定向:把错误信息写入文件
    
    cat /etc/passwd | grep root       //文件中查找root
    
    linux的查找是找整个分区,which查找文件,whereis查找指定文件,locate查找,find查找,find查找实例。
    which这个命令在/usr/bin/which下面。
    
    
    ifconfig eth0   //查看第一个网卡信息
    ifconfig eth0 down  //停掉这个网卡
    ifconfig eth0 up    //启动网卡
    
    
    vi  
    ctrl+F,ctrl+B   //向下向上翻页
    set nu    //行号显示出来
    set nonu   //取消行号
    dd     //删除一行
    u     //撤销
    ctrl+r   //反撤销
    yy     //复制当前行
    p      //粘贴
    /word   //查找
    n  N    //查找上一个下一个
    
    
    进程:每个进程不影响。
    程序:代码的集合。 程序再运行的过程中产生进程,可以产生多个进程。产生几个进程取决于程序怎么写的。程序结束的时候进程也会结束。
    每一个进程都有一个进程号。
    ps  //查看所有软件的进程信息
    ps -ef   //显示进程信息,UID是进程是基于用户启动的,pid是进程号,ppid是父进程,父进程是子进程的父亲,子进程是父进程派生出来的,
    ps aux   //也可以查看进程信息,只是有了cpu使用率内存使用率,
    ps aux | grep apache
    进程跟软件一样是又分类的,守护进程(后台进程)(服务进程),交互进程(既可以手动开始也可以系统启动的时候启动)
    ps aux | grep sendmail     //是开机启动的发送邮件进程,
    service sendmail stop      //就是去关闭sandmail进程,可以认为的干预,
    killall       //将相关的进程都杀掉
    ps -ef | grep apache
    killall -u apache      //会发现apache进程并没有全部被杀死,因为apache的父进程没有杀掉,会再次派生出子进程,
    kill 3957      //根据进程号来杀
    
    
    shell:
    bash也是shell的一种,shell是命令解释器。
    shell是以行为单位的,shell只有整数和字符串。
    
    #!/bin/bash            //调用bash脚本的时候,是通知系统用什么解释器去解释这个脚本,如果bash是默认的shell就可以不写,            
    # Program
    # this is a program
    echo -e "hello world"
    exit 0
    
    shell脚本的2中执行方式:1.sh 文件名    2. ./文件名(权限不够,文件权限是-rw-r--r--),chmod 744 文件名,就可以执行文件了。shell脚本执行的时候会创建进程,执行完了之后把结果传递到父进程里面来。
    
    //定义shell变量,name=string,变量名用小写命名,=是赋值,两边不能有空格,否则视为命令会报错,v1='ccdcdc',v2=centos,如果是字符串要加单引号或者双引号。如果只有一个单词可以不加。
    
    v1=centos
    v2="heool"
    echo $v1   //输出变量
    
    a=10
    b=20
    echo $a
    echo $b
    c=$(($a*$b))   //加减乘除运算要加双层小括号才行
    echo $c
    echo $((100-200*2))
    
    v2="vdvdvdv"
    echo ${#v2}      //获取字符串的长度
    echo ${v2:2}     //从第二个字符开始截取
    echo ${v2:2:2}   //从第二个字符开始截取截取2个
    
    
    //判断:文件是否存在,目录是否存在,是否有权限。
    test判断命令,test -f文件是否存在,test -d目录是否存在,test -r文件是否有读权限,test -w文件是否有写权限,test -x文件是否有执行权限。
    
    #!/bin/bash
    filename=/home/zhanshan
    test -f $filename && echo 'exit' || echo 'not exit'        //文件存在就输出存在不存在就输出不存在
    
    []判断命令:中括号中必须都要使用空格来分隔,中括号中的变量最好以双引号括起来,常数以单引号括起来。左中括号后面、==前后、右中括号前面、都要加空格。中括号更多用再在if条件判断里面
    [ "Sa" == "Sc" ] && echo "yes" || echo "no"
    [ '12' == '10' ] && echo "yes" || echo "no"
    
    #!/bin/bash
    a=this
    b=there
    [ $a == $b ] && echo 'yes' || echo 'no'
    [ $a != $b ] && echo 'yes' || echo 'no'
    
    if [ -f $filename ]; then      //文件是否存在
        echo 'file exit'
    fi
    
    if [ -f $filename ]; then      //文件是否存在
        echo 'file exit'
    else
        echo 'else'
    fi
    
    if test -f $filename; then      //文件是否存在
        echo 'file exit'
    fi
    
    
    if [];then
        echo
    elif
        echo
    elif
        echo
    fi
    
    case $name in
    esca
    
    //多分支判断
    #!/bin/bash
    echo 'please input you number'
    read number     //读取输入
    if [ $number == 1 ];then
      echo 'is 1'
    elif [ $number == 2 ];then
      echo 'is 2'
    elif [ $number == 3 ];then
      echo 'is 3'
    else
      echo 'not 1,2,3'
    fi
    
    
    //多分支判断
    #!/bin/bash
    echo 'please input you number'
    read number     //读取输入
    case $number in
    'a')
      echo 'is a';;
    'b')
      echo 'is b';;
    'c')
      echo 'is c';;
    *)
      echo 'not a,b,c';;
    esac
    
    
    
    //循环:while condition; do done , untile condition; do done;,for (());do done;
    i=10
    while(($i>=5));do      //while [ $i -gt 5 ];do
    echo $i;
    ((i--))
    done;   //(())小括号里面支持==,!=,>,>=,<,<=[]里面用-eq,-ne,-gt,-ge,-lt,-le
    
    
    i=10
    until(($i<=5));do      //不执行的条件
    echo $i;
    ((i--))
    done;
    
    
    for((i=1;i<=10;i++));do      //不执行的条件
    echo $i;
    done;
    
    
    //多分支判断
    #!/bin/bash
    function print(){
        echo "your input is $1"
    }
    echo 'please input you number'
    read number     //读取输入
    case $number in
    'a')
      print 'a';;
    'b')
      print 'b';;
    'c')
      print 'c';;
    *)
      print 'none';;
    esac
  • 相关阅读:
    JavaScript学习笔记(十六) XMLHttpRequest
    Zabbix 3.0 安装笔记
    jetty端口灵活配置方法
    IDEA15入门常用设置
    [转] 填石头——时间管理
    [转]关于产品的落地
    [转]Netbeans IDE默认UTF-8编码
    如何解决SSH连接Linux超时自动断开?
    ActiveMQ部署步骤和后台管理网站Service Unavailable问题解决笔记
    [转]Maven2中snapshot快照库的使用
  • 原文地址:https://www.cnblogs.com/yaowen/p/8311007.html
Copyright © 2011-2022 走看看