4.6 输入和输出
输入指的是shell程序读入数据,可以从文件读取或从用户输入读取等方式读入数据。输出指的是shell程序的运行结果的处理,可以显示到屏幕或保存到文件。本节将讲述shell程序的输入和输出。
4.6.1 echo命令输出结果
echo命令可以输出文本或变量的值,是shell中最常用的输出方式。结果可以输出到终端,也可以写入到文件。该命令的用法如下所示。
echo $str #将结果输出到终端。 echo $str >file #将结果保存到文件file中,如果没有文件会新建一 #个文件。如果已经有文件则会覆盖以前的文件。 echo $str >>file #将结果追加到文件file中。
|
echo输出的内容可以有下面的格式控制字符。
\c:末尾加上\c表示这一行输出完毕以后不换行。
\t:输出一个跳格,相当于按下“Tab”键。
\n:输出一个换行。
需要注意的是,如果要输出特殊字符,必须加-e选项,否则输出的结果中会直接输出字符。加-n选项可以禁止echo输出后的换行。例如下面是使用echo进行输出的例子。
从主菜单中打开一个终端。
在终端中输入下面的命令,输出一行文本。
按“Enter”键,运行结果如下所示。
在输出内容中加入一个换行,输入如下所示命令。
按“Enter”键,运行结果如下所示,换行符\n被直接输出,并没有换行。
如果需要在输出内容中显示换行,需要在echo后加-e选项。输入下面的命令。
echo -e “hello ,\nBeijing” |
按“Enter”键,运行结果如下所示。换行符\n处输出了一个换行。
在文本中输出几个跳格,输入下面的命令。
echo -e “hello ,\t\t\tBeijing” |
按“Enter”键,运行结果如下所示。
将结果输出到文件。在终端中输入下面的命令。
echo “hello ,Beijing .” >a.tx |
按“Enter”键。在终端中没有输出显示。输入“vim a.txt”命令,用VIM查看a.txt文件。可以发现文件a.txt中有下面的文本。
再次向这个文本中输出结果,在终端中输入如下的命令。
按“Enter”键。在终端中没有输出显示。输入“vim a.txt”命令查看文件a.txt。可以发现文件中有下面的文本。第二次的输出覆盖了第一次输出时建立的文件。
用追加的方法向这个文本中输出结果,在终端中输入如下的命令。
按“Enter”键。在终端中没有输出显示。输入vim a.txt命令查看文件a.txt。文本的内容如下所示,第二次的输出追加到了第一次输出结果的末尾。