码迷,mamicode.com
首页 > 系统相关 > 详细

Linux基础特性总结之二

时间:2017-08-03 10:05:09      阅读:268      评论:0      收藏:0      [点我收藏+]

标签:linux

计算机基础

Linux历史

文件管理(查看、处理)

目录管理

LHS

时间戳、时间、关机

哲学思想

文件命名


Bash的基础特性

    命令行展开

    命令补全

    路径补全

    glob

    快捷键

    管道

    I/O重定向

    别名

    hash


    变量


grep,egrep,fgrep

    

    变量

    配置文件

    算术运算表达式

    测试表达式

    退出状态码


变量:

    定义

        变量名

        变量

数据类型

变量类型

变量类型作用(存储数据的格式,范围,参与的运算)

强类型

弱类型 1不用定义 2 直接赋值,默认存储 为字符型  3 调用时隐式转换


bash作用域的变量

    本地, 环境 , 局部, 位置 , 特殊变量 的生效范围

    

变量命令的法则

    1 不能数字开头,不能用关键字

    2 见名知义

    3 避免全大写, _ 开头

    

文件命名的法则

    1 不能数字开头,不能用特殊字符 (glob通配符)

    2 区分大小写

    3 不能为/ [^/]

    4 长度<255

    5 .开头为隐藏文件

    

哲学思想

    文件/ 组合 小程序/ 文本实现配置 / 尽量不交互


grep    .  [] [^]  * \+ \? \{m\} \{m,n\} \(\) 

egerp  .  [] [^]  * + ? {m} {m,n} ()               |

^,$


egrep 或 “grep并不支持”

[abcd] 字符级别的或

c|cat 左侧整体或右侧整体

(c|c)at 分组或


变量赋值

    name=‘value‘ 

        name将单个内存空间命名

        = 赋值符号

        赋值: 将值存储在变量所表示的内存空间中


        ‘ ‘ 

        “ ”

        value 值

            纯文本引用赋值    

                name=obama

                空格?

            变量引用实现赋值 加载一个变量内存空间中存储的值至CPU寄存器中,经过处理后,存加内存空间中.

               name="obama jerry"

                  name=$name  ##存回原处

                   var=$name    ##存到另一处

            命令引用实现赋值

                  name=`command`

                  name=$(command)


    引用        强、弱

    ${name} $name 使用的场景


    撤消: Unset


    本地变量查看: set

     环境变量查看: export env printenv

        不要随便给大写字母赋值,可能会导致bash工作特性改变

            PS1 命令提示符前面的字符

            PATH 命令的搜索路径

            UID 

            SHELL


    位置变量: 类似,正则表达式引擎将括号中模式所匹配到的内容记录于内置变量中, \1,\2,\3

        bash将传递给脚本的参数保存在内置变量中, $1,$2,$3,可供脚本中调用,如果,不存在,则为空。

    特殊变量: 

        $0

        $#

        $@

        $*   看做一个整体

        $? 命令的执行状态结果


    换港操作符

            shift #


算术运算

    let 算术运算表达式

    let var=$num1+$num2

    变量引用赋值

        var=$[算术运算表达式]

        var=$((算术运算表达式))

    命令引用赋值

        var=$(expr 算术运算表达式)

            var=$(expr $num1 + $num2)


    生成随机数

        let $RANDOM%$VAR

        $[$RANDOM%10]

        $(($RANDOM%10))

        $( expr $RANDOM % 10)


 配置文件

    全局: /etc/{profile,profile.d} /etc/bashrc

    个人:~/.bashrc, ~/.bash_profile

    功能

            profile 环境 变量 , 脚本 

            bashrc 本地变量   别名   

    登陆方式,读取配置顺序

        交互式登陆

            需要输入密码的登陆  或  su -[l] user

        /etc/profile /etc/profile.d ~/.bash_profile 

        ~/.bashrc /etc/bashrc     


    非交互式登陆

            不需要输入密码的登陆  或 su user 图形终端

            脚本运行在当前shell子shell进程中

        ~/.bashrc /etc/bashrc /etc/profile.d


测试表达式

    数值测试

        符号: -eq,-ne,-gt,-ge,-lt,-le

    字符测试 (左右都需要 加 引号,  除了 pattern不能加引号,且只能用于 [[ ]] 中)

        符号: == , != , >, < ,  -z "string" -n "string"          A =~ pattern(正则表达式字符组合的模式)

    文件测试

        符号


退出状态码

    exit [#]

    

            

                    

    

本文出自 “Reading” 博客,谢绝转载!

Linux基础特性总结之二

标签:linux

原文地址:http://sonlich.blog.51cto.com/12825953/1953102

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!