shell

一、SHELL技术

1shell特性                     子shell执行, ./ 或者bash ,当前shell执行   . 或者 source 

2shell变量

3shell条件测试

4shell数值运算

5 流控、循环

  if         条件判断

case 

for           循环

while

until

break        内置命令

continue

exit       

shift

array     数组   

function

#############################################################

与shell相关的几个文件,/etc/profile          /etc/bashrc      系统级  登录shell 执行          

     ~/.bash_profile          ~/.bashrc   用户级登录执行   

~/.bash_logount        ~/.bash_history 离开shell执行 

以上的与su     su-  有关目前还没理解       第六集

 

shell特点

(1)命令和文件的自动补齐,         这是因为rpm  -qa |grep        这个包bash-completion

(2)命令历史记忆功能   上下键  、!number       执行历史命令里的第几条命令、

!string   找到最近以字母开始的命令、 !$    上一个命令的最后一个参数、

!!、上一个命令(写脚本用的)         ctrl + R搜索历史命令

ctrl+D  与exit 一样           ctrl +A    +E     移动光标到前或者后

ctrl+K   往后删。ctrl +U    往前删       ctrl+s 锁ping   ctrl+Q 解锁

前后台作业控制  &、  nohup、ctrl+C 、 ctrl+Z  bg %1、  fg%1、kill %3、screen

 

ip addr |grep ‘inet ‘ |grep eth0

ip addr|grep‘inet ‘|tee test |grep eth0   覆盖

ip addr |grep ‘inet‘|tee -a test|grep eth0 -a  追加           tee管道

 

df |grep ‘/$‘                                  磁盘里过滤跟下的

df |tee df.txt |grep ‘/$‘

 

命令排序::::   三个符号;1、              ;          如cd;eject 把挂载的光驱给弹出来

;  不带逻辑判断

&&  带逻辑判断     前边的命令成功后执行后边的命令

||    带逻辑判断  前边的命令执行不成功,执行后边的命令

true  永远返回值为真     false   返回值为假   

 

command &             后台执行

command &>/dev/null    混合重定性(标准输出1,错误输出2)

command &&  command 2   命令排序,逻辑判断 

 

shell  通配符(元字符 )表示的不是本意

   *              匹配任意多个字符

  ?           匹配任意一个字符

【】匹配括号中任意一个字符  【abc】可能是a也可能是b 或者c  【^a-z】取反,不是a-z

()属于打开新的shell 执行

{}   集合  

\ 转义字符

echo -e "a\tb"  可以把T转义为tab键         -e 解释后边的特殊符号和颜色输出机制

带颜色输出################################################

echo -e "\e[1;31mThis is a red text."       打印-e   "\e [1;31-37 打印出来的颜色"

在最后边加上\e[0m    表示重置  31-37 指得是前景色       41-47 指的是背景色  

带颜色输出################################################

变量::

变量的命名:必须以字母或下滑线开头,不能以数字开头。

read -p “提示    ”           read  是从键盘读入

if [ $? -eq 0 ] ; then

        echo     “                ”

else   

       echo "                  " 

fi

上面的脚本的意思是如果$? =0 然后打印  “            ”不等于0执行else

fi  结束  

 

shell

上一篇:Linux中,&和&&,|和||


下一篇:shell专题(一):Shell概述