您的位置:首页 > 运维架构 > Shell

(四)shell的部分使用功能

2011-05-20 16:59 225 查看
从广义上说Shell分为两种GUI和GLI,shell种类的存放路径在/etc/shells,在redhat中默认的shell是bash。

Bash功能有:

1、command history 命令历史,2、命令行编辑,3、命令别名alias,4、命令行扩展globbing {},$(),``,|管道5、变成功能。计算机冯诺依曼体系定义了计算机有输入设备和输出设备。设备文件分为字符设备(c)和块设备(b)在linux中输入输出文件:/dev/stdin标准默认输入,/dev/stdout标准默认输出,/dev/stderr默认输出错误。三个文件都有各自的文件描述符:STDIN:0;STDOUT:1;STDERR:2.输入输出重定向:STDIN的输入重定向的符号是:<;STDOUT输出重定向:>,TDERR的错误输出重定向:2>;把错误输出和标准输出重定向到同一个位置:&>,这些输出都是会被覆盖的。>>附加重定向输出符号,也就是把执行的命令的结果输入到问价中而不会覆盖之前的内容。命令set –c 重定向不能覆盖,如果还是想要覆盖用>|就可以,set +c设定重定向可以覆盖。重定向的使用方式:command filename 》(>,2>,&>) filename。其中&>和2>&1一样但是前者可以把输出的内容保存到同一个文件中,后者是不能把输出的内容保存到同一个文件中。

管道PIPE(|)功能:
把前面的命令的输出交给后一个命令并成为后一个命令的参数,组合小程序完成复杂命令。格式:command | command | command | ……。(command;command)| command
tr命令:转换或删除字母,用法:tr 【option】 ‘set1’ ‘set2’……两个字符集尽可能的一致。并用单引号隔开。Ls –C按字段显示。Echo redhat | passwd –stdin username。
Exec命令定义自己的文件描述符,用法:exec num>> filename num取值是3到9.例如:exec 3>> /home/hh1 cat filename >&3.关掉用:exec num>&-就可以。
Tee 功能:一个输入两个输出,即显示并保存。例如:ls /etc | tee filename。<<作用是将多行“标准输入”输入的内容重定向至一个文件中,例如<< end,输入内容知道遇见end才结束。例如:cat >> filename << end 把输入的内容保存到filename中。
加法运算:let c=$a+$b 或者c=$[$a+$b]
循环语句:流程控制语句:在满足一定条件下的循环:for while until
使用方法:for VAR in list do…… done
例如从1加到100
#!/bin/bash
sum=0
for a in `seq 1 100`
do
let sum=$sum+$a
done
echo $sum本文出自 “hh_linux” 博客,请务必保留此出处http://hhwong.blog.51cto.com/2991901/569752
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: