Linux学习-08-学习BASH

『 \[Enter] 』 跳脱


变数的取用: echo

echo $HOME

myname=VBird

echo $myname


变量的设定规则

1,变量与变量内容以=来连接myname=VBird

2,等号两边不能有空格

3,变量名称只能是英文字母和数字,但不能数字开头

4,变量内容有空格用" 或 ‘将变量内容结合起来,但,

双引号内的特殊字符如 $ 等,可以保有原本的特性,如下所示: 

『var="lang is $LANG"』则『echo $var』可得『lang is en_US』

单引号内的特殊字符则仅为一般字符 (纯文本),如下所示: 

『var=‘lang is $LANG‘』则『echo $var』可得『lang is $LANG』

5. 可用跳脱字符『 \ 』将特殊符号(如 [Enter], $, \, 空格符, ‘等)变成一般字符;

6. 在一串指令中,还需要藉由其他的指令提供的信息,可以使用反单引号『`指令`』或 『$(指令)』。

特别注意,那个`是键盘上方的数字键1左边那个按键,而不是单引号!例如想要取得核心版本的设定:

 『version=$(uname -r)』再『echo $version』可得『2.6.18-128.el5』

7. 若该变量为扩增变量内容时,则可用 "$发量名称" 戒 ${发量} 累加内容,如下所示: 『PATH="$PATH":/home/bin』

8. 若该变量需要在其他子程序执行,则需要以 export 来使变量变成环境变量: 『export PATH』

9. 通常大写字符为系统默认变量,自行设定变量可以使用小写字符,方便判断 (纯粹依照使用者兴趣与嗜好) ;

10.取消变量的方法为使用 unset :『unset 发量名称』

例如取消 myname 的设定: 『unset myname』



read

要读取来自键盘输入的变量

read atest 

This is a test <==此时光标会等待你输入!请输入左侧文字看看

[root@www ~]# echo $atest 

This is a test <==你刚刚输入的

[root@www ~]# read -p "Please keyin your name: " -t 30 named

Please keyin your name: VBird Tsai <==注意看,会有提示字符喔! 

[root@www ~]# echo $named VBird Tsai


ulimit 『限制用户的某些系统资源』

变量内容的删除取代与替换

别名设定alias,unalias

数据流重导向

1. 标准输入 (stdin) :代码为 0 ,使用 < 或 << ;

2. 标准输出 (stdout):代码为 1 ,使用 > 或 >> ;

3. 标准错误输出(stderr):代码为 2 ,使用 2> 或 2>> ;

将 stdout 不 stderr 分别存到不同的档案去 

[dmtsai@www ~]$ find /home -name .bashrc > list_right 2> list_error

/dev/null 垃圾桶

同时写入 find /home -name .bashrc > list 2>&1

命令执行的判断依据: ; , &&, ||

cmd ; cmd (不考虑命令相关性的连续指令下达)

cmd1 && cmd2 

1. 若 cmd1 执行完毕且正确执行($?=0),则开始执行 cmd2。 

2. 若 cmd1 执行完毕且为错诨 ($?≠0),则 cmd2 不执行。

cmd1 || cmd2

1. 若 cmd1 执行完毕且正确执行($?=0),则 cmd2 不执行。 

2. 若 cmd1 执行完毕且为错诨 ($?≠0),则开始执行 cmd2。

我不清楚 /tmp/abc 是否存在,但就是要建立 /tmp/abc/hehe 档案 

[root@www ~]# ls /tmp/abc || mkdir /tmp/abc && touch /tmp/abc/hehe


管线命令『 | 』


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。