一,shell的输入,输出
1,echo:显示文本行,变量或者把字符串输入到文件
格式:echo [option] string
-e 解析转义符
-n 回车不换行
2, read
$ cat read.sh
#!/bin/bash
#read test
echo -n "first name:";
read first;
echo -n "last name:";
read last third;
echo -e "your firstname : ${first}";
echo -e "your lastname: ${last}";
echo -e "your lastname: ${third}";
echo "done";
3,cat
-v 参数,显示控制字符。
4,管道
df -h| awk '{print $1}'|grep -v "Files"
5,tee
把输出的一个副本输送到控制台,另一个副本拷贝到文件。
-a 参数表示追加
6,标准输入,输出和错误
在shell执行命令的时候,每个进程都和三个打开的文件相关联,并使用文件描述符来引用这些文件。
7,文件重定向
改变程序的输入来源或者输出地点。
grep "zqm" zqm.txt 2>>/dev/null
8,exec
启动一个新的shell,并不生成子shell,当前所以环境变量都会被清除。
格式:exec conmand(通常是一个shell脚本)
exec对文件描述符操作时不会覆盖当前的shell
$ cat exec.sh
#!/bin/bash
###test exec
exec 3<&0 0< name.txt #标准输入指向文件描述符3,既是打开文件描述符3
read line1
read line2
exec 0<&3 #文件描述符3重定向到标准输入,既是关闭文件描述符3
echo $line1
echo $line2
9,其他
date "+%Y%m%d"