zoukankan      html  css  js  c++  java
  • 认识和学习bash

    认识Bash这个Shell

    查看linux下shells:

    [shichaogeng@study etc]$ vim /etc/shells

     

    查看登入时取得到的shell:

    [shichaogeng@study etc]$ vim /etc/passwd

    其中,root用户取得的是/bin/bash,为linux预设shell,有以下几个优点:

    ~./bash_history 记录指令历史
    
    c[tab]查找以c开头的指令
    
    alias 设置查询别名
    
    shell scripts
    
    通配符(wildcard)

    查询是否bashshell内建指令:

    [shichaogeng@study ~]$ type cd

    指令下达与快速编辑

    命令太长可以利用Enter来换行(转义)继续输出

    ctrl+u 向前删除

    ctrl+k 向后删除

    ctrl+a 跑到最前端

    ctrl+e 跑到最后端

    Shell的变量

    变量的取用与设定:echo,变量的设定规则unset

    变量的取用 echo $变量名 或者 echo ${变量名},例如:

    用等号设定变量名=

    注意,变量设定要符合以下规则哦:

    1.用等号连接

    myname=VBIRD

    2.=两边不能加空格

    3.只能英文和数字组成,并数字不能开头(试了下,下面的好像不太符合啊)

    4.变量内容若有空格,可以用"或'括起来()注意要成对出现哦,但

    双引号的特殊字符如$,可保持原有特性(即变量),如:

    单引号的特殊字符仅文本输出,如:

    5.用转义特殊字符到原来的意义

    6.借用其他指令,用反引号`指令`或者$(指令)如:

     

    那么,如何进入当前核心驱动模块的目录?:

    其中,被``包起来的内容会优先执行

    7.可用"$变量名"或$(变量名)来累加内容(PATH用:来分隔),如:

    PATH="$PATH":/home/bin
    PATH=${PATH}/home/bin

    8.使用export使变量变成环境变量

    export myname

    怎么样,看懂了吗,其中bash表示进入子程序

    9.一般大写字符为环境变量,自定义为小写(自己决定咯)

    10.取消变量设定,用unset 变量名称

    环境变量的功能

    用env查看环境变量和常见的环境变量说明

    [shichaogeng@study ~]$ env

    使用set来观察所有变量,包括环境和自定义变量

    PS1:命令提示符的设定(可以man bash来查看PS1的相关说明)

    其中u代表目前使用者账号

    h代表主机在第一个小数点之前的名字

    W代表工作目录名,最后一节目录

    $代表提示字符,root为#,其他为~

    $:本shell的线程代号(pid)

    ?:上个指令执行锁回传的值

    export自定义变量转环境变量

    环境变量与自定义变量有什么区别啊,需要来回转换,哈哈,主要是父程序的环境变量能被子程序所使用啊

    因为子程序只会继承父程序的环境变量,所以需要export之后自定义变量编程环境变量,子程序才能使用啊

    export展示所有环境变量:

    变量的键盘读取,数组和宣告

    read

    read -pt variable
    其中,-p代表提示;-t代表超时时间

    decalre/typeset

    decalre [-aixr] variable
    -a:将variable变量定义为array数组
    -i:将variable变量定义为integer类型
    -x:将variable变量声明为环境变量
    r:将variable变量设定为readonly,该变量不能被更改,也不能unset

    解释:变量类型默认字符串,bash环境运算都为整数1/3=0

    把-号变为+为取消设定

    -p可只列出变量类型

    数组:var[index]=content

      

    变量的删除,取代和替换

     删除

    #代表从前面开始删除,1个#代表删除最短的路径,2个##代表删除最长的路径

    删除和取代表格:

    替换:-代表替换null :-代表替换""和null

     别名和历史

    别名alias

    用alias列出别名

    alias xx='xxx'指定别名

    unalias xx 取消别名

    history

    history n    最近n笔命令
    history -c    清空shell中history
     history -raw histfiles
    -a 新增的指令加到histfiles中
    -r 读取histfiles到history记忆中
    -w history记忆中命令写到histfiles中

    查看~/.bash_history 大小

    利用history来执行命令

    !number    执行第几笔指令
    !command    执行command开头的指令
    !! 执行上一个指令
     
  • 相关阅读:
    后缀字符串 计蒜客模拟赛
    HDU 1087 最长不下降子序列 LIS DP
    POJ 3126
    Authorize by ClaimIdentity by Owin
    Authencation WebApi Learning
    Agency-AccrualDetails Table Summary
    EF usage with ABP
    Scss environment setup
    Tips about CSS usage
    Send Mail C#
  • 原文地址:https://www.cnblogs.com/gengsc/p/6883354.html
Copyright © 2011-2022 走看看