linux 、语言区别 及bash语言

1、语言之间的区别

程序:

         编译型语言(静态语言):编译执行,C,  C++

              变量类型(强类型) 

                                  字符

                                  数值 

                                         整数

                                        浮点数

  开发周期:          源程序--》编译--》链接(一些所用到的库)--》执行

           脚本型语言(动态语言):解释执行,依赖于解释器                    比如  php属于脚本语言

                 变量(弱类型)

                       默认识别为字符型

    开发周期:            源程序---》使用解释器解释执行

bash, perl ,python , php,ruby 

2.bash 语言

  bash 变量类别

      本地变量:   仅对当前shell 有效,对子shell无效
  
       环境变量: 作用范围 是当前shell 及其子shell                  

       特殊变量: $?  返回上一个命令的状态值       代表程序执行状态的返回值  : 0 代表成功 1-255 失败
                          
       位置变量:

   ‘’(单引号):强引用      变量不会替换
    “ ”(双引号):弱引用   引号内的变量会被替换

一般变量不需要声明   ,也可以声明 用declare
                              declare      AGE                                        
                                             -i  :声明为整型
                                            -a: 声明为数组
                                            -r : 声明为只读变量
                                           -x :声明为环境变量

消除变量     用 unset 命令、
打印 变量    echo  $Age
                    Age=${Age-40}  如果 变量Age有值 就使用Age的本身的值,否则就赋值为40  相当于php 中的 三目运算符  ? :

声明环境变量:                
                        export  VARNAME=value
                         declare  -x   VARNAME=value
查看所有环境变量                        
                                  env             printenv   export
修改环境变量的值   
                             export  PATH=/usr/local/apache/bin:$PATH        //修改PATH变量的值
           默认      PS1='  [\u@\h \w]\$ ';           
命令替换:用命令的执行结果 替换命令       反引号 与   $()
变量:配置文件
          全局:
                     /etc/profile,    /etc/profile.d/*,      /etc/bashrc
            个人:~/.bash_profile ,   ~/.bashrc
bash 运行方式:
              交互式: 通过命令实现的              /etc/profile----> /etc/profile.d/*--->~/.bash_profile ,   ~/.bashrc  --> /etc/bashrc   配置文件读取顺序
             非交互式: 通过脚本实现的           ~/.bashrc--->/etc/bashrc--> /etc/profile.d/*
profile 类:
               设定环境变量
                用户命令或脚本          bash 环境启动时加载的文件  因此设定环境变量时,需要重新启动bash环境  或用source命令 .  文件
bashrc类
              :设定本地变量
                    设定命令别名
                     alias=ALIAS=COMMAND   有时 COMMAND中有空格时 需要加引号  撤销别名 unalias
shell 脚本:
命令的堆砌
 #告诉是在什么环境下执行 
#! /bin/bash     
# date   注释行
 date 
ls  /etc
seq  10
输入、输出重定向、 管道
程序的默认输入设备,叫标准输入,stdin ,键盘 ,0
程序的默认输出设备,叫标准输出。stdout,minitor ,1
程序的默认错误信息输出设备,标准错误输出,stderror,minitor,2
输出重定向;
COMMAND  >  FILE  覆盖输出     set  -C  关闭覆盖输出功能    依然可以输出重定向 只是不能覆盖已经存在的文件了   开启覆盖  set  +C          COMMAND  >|  FILE  代表强行覆盖
COMMAND  >>  FILE  追加输出
       /dev/null   数据黑洞  重定向这里不会有输出
    /dev/zero     泡泡机
     /dev/random
    /dev/urandom       随机数生成器
输入重定向
COMMAND  <   FILE        
COMMAND <<  "EOF"    Here  document
如何使用它生成文件 
                         cat     >>    /tmp/test3.out     <<  EOF 
                        >This is the first  line
                        >This  is  second line
                        >EOF

错误输出
COMMAND    2>  FILE                      COMMAND    2>>  FILE
正确或错误统统重定向
COMMAND  >  FILE   2> &1                     COMMAND  &> FILE
管道:只传递正确的信息
COMMAND | COMMAND1   将第一个命令的输出作为第二个命令的输入     
uniq   去除连续重复的选项

tee   用法   COMMAND|tee|COMMAND


 












        
                                




  




  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值