码迷,mamicode.com
首页 > 其他好文 > 详细

Bash

时间:2015-03-16 22:54:26      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:

变量:

变量的内容: $variable    ${variable}

变量的设置:  

myname=lixingtao    

但是等号两边不能出现空格,如果出现空格可以用  单引号 ’   或者双引号 ”扩起来  myname="li xingtao"

单引号和双引号的区别:

var="lang is $LANG"       那么 echo $var  可得到  "lang is en_US"

var=‘lang is $LANG‘      那么 echo $var  可得到  "lang is $LANG‘

可以通过转义字符  "\"  将有特殊意义的字符( enter  $  \  空格) 变成一般字符

当需要其他命令提供信息时

`command`  这里不是单引号,而是反单引号

$(command)  

e.g.    version=$(uname -r)    或者时  version=`uname -r`

取消变量设置:

unset variable

 

环境变量:

env可以查看所有环境变量

set 查看所有变量(包括环境变量和自定义变量)

HOME 用户的朱文件夹

SHELL 目前这个环境用的shell是哪个程序

HISTSIZE  系统记录下最近环境变量的最大个数

MAIL 邮箱

LANG 语义系

RANDOM 这个变量的内容介于 0~32767之间  也就是$RANDOM 会生成一个0~32767之间的数值

PS1 命令提示符, 可以到~/.bashrc中设置

$  shell的PID

? 执行上个命令的回传码,如果执行成功返回0,执行错误返回错误码

export  variable

将自定义变量转化为环境变量

子进程会继承父进程的环境变量但是不会继承父进程的自定义变量,要想要在子进程中使用父进程定义的变量,必须在父进程中用export将变量转化为环境变量

export后面不加参数将输出所有的环境变量

键盘读取变量:

  read [-pt] variable

声明变量:

declare [-aixr] variable    如果将 - 给成 + 表示去掉某属性

 

变量内容的删除和替换

变量书写方式 功能描述
${变量名称#匹配字符} 若变量内容有被匹配到,刚从变量内容的左边开删除,但删除匹配最短的
${变量名称##匹配字符} 若变量内容有被匹配到,刚从变量内容的左边开删除,但删除匹配最长的,可理解成此时工作在贪婪模式
${变量名称%匹配字符} 若变量内容有被匹配到,刚从变量内容的右边开删除,但删除匹配最短的
${变量名称%%匹配字符} 若变量内容有被匹配到,刚从变量内容的右边开删除,但删除匹配最长的,可理解成此时工作在贪婪模式
${变量称/旧字符串/新字符串} 从变量内容的左边开始匹配,用新字符串替换旧字符串,仅替换第一个匹配到的字符串
${变量称//旧字符串/新字符串} 从变量内容的左边开始匹配,用新字符串替换旧字符串,全部替换匹配到的字符串

变量内容的测试和替换 

 

变量配置方式 str 没有配置 str 为空字符串 str 已配置非为空字符串
var=${str-expr} var=expr var= var=$str
var=${str:-expr} var=expr var=expr var=$str
var=${str+expr} var= var=expr var=expr
var=${str:+expr} var= var= var=expr
var=${str=expr} str=expr
var=expr
str 不变
var=
str 不变
var=$str
var=${str:=expr} str=expr
var=expr
str=expr
var=expr
str 不变
var=$str
var=${str?expr} expr 输出至 stderr var= var=$str
var=${str:?expr} expr 输出至 stderr expr 输出至 stderr var=$str

 

 

命令别名:

alias 

unalias 

历史命令:

history

终端机环境设置:

ctrl+C  终止目前的命令

ctrl+D  输入结束(EOF)

ctrl+M  及时enter

ctrl+S  暂停屏幕输出

ctrl+Q  回复屏幕输出

ctrl+U  在提示符下,将这行命令删除

ctrl+Z  暂停目前命令

 数据流重定向:

标准输入:  代码为0 使用<或者<<

标准输出:  代码为1 使用>或者>>

标准错误输出:  代码为2 使用2>或者 2>>

 

cut选取命令:

cut -d ‘分割字符‘ -f  fields

echo $PATH | cut -d ‘:‘  -f  3,5

echo $PATH | cut  -c  12-20

grep 查找命令:

grep [-acinv] [--color=auto] ‘查找字符串‘ filename

 

sort 排序命令:

uniq 排序完成了,要想将重复的数据仅列出一个显示

wc 统计命令,可以统计一个文件的字符个数,行数,字数

 

Bash

标签:

原文地址:http://www.cnblogs.com/li-xingtao/p/4343012.html

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