linux bash 几个命令

本文详细介绍了Bash命令的使用方法,包括环境变量与自定义变量的区别、变量的声明与读取、变量的修改方法,以及如何利用条件选择、管道命令进行高效的数据处理等。

1.env与set

  env查看环境变量,set查看自定义变量。

  bash启动后它就是一个独立的进程PID,此时如果执行了另一个命令后所生成的一个进程就称为子进程,在子进程中只能使用父进程的环境变量而不能用父进程的自定义变量。因此要想使用自定义变量在父进程及子进程中都有效,可以通过export来实现,export就是让自定义变量变为环境变量的。

  export self-definition-variable

2.变量

  读取 read 

  read [-pt] variable   接受用户输入并赋值给指定变量

    -p  提示符

    -t  等待时间表(秒)

  声明变量 declare / typeset

  declare [-aixr] variable  若不指定,默认为字串类型

    -a array

    -i integer

    -x  used as export,transform var into environment variable

    -r  read only

3.修改变量

  (1)删除

  path = ${PATH}   设path = /usr/ab:/usr/ac:/etc/xx

  ${path#/*:}   表示从前删除/与:之间的最短的数据, 删除后 path = /usr/ac:/etc/xx

  ${path##/*:}   表示从前删除/与:之间的最长的数据, 删除后 path = etc/xx

  ${path%:*xx}   表示从后删除xx与:之间的最短的数据, 删除后 path = /usr/ab:/usr/ac

  ${path%%:*xx}   表示从后删除xx与:之间的最长的数据, 删除后 path = /usr/ab

  (2)替换

  ${path/sbin/SBIN}   sbin替换成SBIN,替换第一个

  ${path//sbin/SBIN}   sbin替换成SBIN,替换所有的

4.条件选择

  如果将多个命令写在一行并让他们依次执行,则需要

    sync;sync; shutdown -h now

  但是如果前一条命令与后一条命令具有依赖性,怎么办呢?比如说我要查看某目录或文件是否存在,如果存在则不操作,如果不存在则新建。这个时候就需要用到 &&,||这两个命令了,它们来判断前一个命令是否成功并判断是否继续执行下一个命令。

  cmd1&&cmd2   cmd1成功(回传码$(?=0)),执行cmd2

          cmd1失败(回传码$(?!=0)),不执行cmd2

          可以理解为:命令相与操作,即两个命令都需要执行的,依次执行命令,只要有一上执行失败则不执                              行后面的命令。

  cmd1||cmd2    cmd1成功,不执行cmd2

          cmd1失败,执行cmd2

          可以理解为:从最前面的命令开始执行,只要有一个命令执行成功就OK,即不再继续执行下去。

  ex:

    ls /home/abc  || mkdir /home/abc

    cmd1 && cmd2 || cmd3,顺序通常不变,cmd2,cmd3且必须能够成功执行

5.管道命令|

  管道命令仅会处理stand output.

  ex :

    ls -al /etc  | less

  只查看自己感兴趣的信息cut,grep,配合管道使用

  cut -d "splitliine"  -f fields

  cut -c indexs of charactor

  ex:

    echo $path

      /bin:/usr/bin:/sbin

    echo $path | cut -d ":" -f 1          #-f 3,4

      /bin

    echo $path | cut -c 5-

      /usr/bin:/sbin

  grep it's  a strong and usefull command,get more information from google help,heh.

  last | grep 'root'    #support regular expression

6.排序

  sort,uniq,wc

    cat /etc/passwd | sort -t ':' -k 3 -n  ':'分开的第3个字段并以数值方式排序

转载于:https://www.cnblogs.com/lovemo1314/archive/2013/02/26/2932925.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值