linux之 shells和io流控制 待编辑

来源:互联网 发布:linux读法 编辑:程序博客网 时间:2024/05/21 04:25

/etc/shells 可用shell

bash  几多功能:

       history    命令行编辑

       命令别名 支持扩展

       管道       编程

初始化用户工作环境   环境配置文件

全局配置 /etc/profile    /etc/profile.d/*     /etc/bashrc

用户个人配置  ~/.bsah_profile ~/.bashrc

 

输入设备 输出设备 设备文件

       设备 字符c b

文件描述符:   STDIN:0        < 输入重定向

STDOUT:1     >输出重定向

STDERR:2     2>错误重定向

       &> 错误输出和标准输出重定向到同一个位置

 

若要使用 用文件描述符就行

 

输入/输出重定向

       #command > filename    #command 2> filename

       可以覆盖,danger so>> 可以添加而不覆盖.

 

set -C 开启不覆盖功能 set +C 覆盖去吧

>| -C 的情况下可以覆盖       #ls /var >| /root/ls.out

可以结合 ls /tec > /tmp/etc.out 2> /tmp/etc.err

其实 &> =2>&1   2的进1里面,引用1而已

2>&1统一输出流

 

管道 PIPE   |

command  | command | …

 

ls -C 强制列

tr  转换或删除字符

#ls /var | tr ‘a-z’ ‘A-Z’

echo ‘redhat’ | passwd --stdin student 不用再输入一遍

   ;分号 一块执行俩命令 ()都

 

3-9 文件描述符

exec 3>> /tmp/ls.out  3定义为 >> /tmp/ls.out

cat /etc/issue >&3 引用加&

exec 3>&-      关掉3

 

 

tee  即显示 | tee         ls /var | tee  tmp/llv

<< 将多行通过标准(键盘)输入的内容重定向到某一个文件中

<< end

# cat << end

> this si

> d

> end

this si

d

#

#cat >> /tmp/d.out << end

 

let  让其运算 数值

       let c=$a+$b

c=$[$a+$b] 也是让其运

$((表达式))

expr  1 + 3

 

循环:流程控制

 for  while    until

for VAR in LIST

do

      

       ..

done

 

 

 

表示范围 `seq 1 100`   $()       {1..100}

原创粉丝点击