分享
 
 
 

使用cat来操作文件

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

Red Hat Linux 有一个工具程序,它能够帮助你保留简短列表,将这些列表收集起来,甚至向你透漏一点你的系统信息。

这个工具叫做 cat ,它是 concatenate(连锁) 的简写,意思是合并文件。

cat 命令还会在屏幕上显示整个文件的内容(譬如,键入 cat filename.txt )。如果文件较长,它会在屏幕上飞快地滚过。要防止这一效果的发生,使用 cat filename.txt | less 命令。

一起使用管道(|)和 less 命令会一页一页地显示文件。然后,你便可以使用向上或向下的箭头键在页码中向前或向后移动。关于使用管道来合并两个不同功能的详细信息,请参阅 第 13.10 节

13.9.1. 使用重导向 重导向就是使 shell 改变它所认定的标准输出,或者改变标准输出的目标。

要重导向标准输出,使用 > 符号。把 > 符号放在 cat 命令之后(或在任何写入标准输出的工具程序和应用程序之后),会把它的输出重导向到跟在符号之后的文件中。

譬如,使用 cat 自身会在屏幕上输出你所输入的内容,如同是在重复你刚键入的行。下面的例子显示了 cat 会重复你输入的每一行:

图 13-5. cat 命令

要把 cat 的输出重导向到一个文件中,在 shell 提示下键入以下命令(按 [Enter] 键会把你带到一个空行):

cat > sneakers.txt

图 13-6. 把输出重导向到一个文件

按 [Enter] 键转到一个空行,然后使用 [Ctrl] - [D] 键 来退出 cat 。

注意到图 13-6 中的区别了吗?此处并没有重复显示。这是因为 cat 的标准输出已经被重导向了。重导向的地方是你刚刚制作的一个叫做 sneakers.txt 的崭新文件。

当你运行 cat 命令时,你会发现你所在目录中的文件(如果你想列举这些文件,键入 ls )。

如前所示,你可以使用 cat 来读取文件。在提示下,键入:

cat sneakers.txt 小心:在你把输出重导向入文件时,请谨慎从事,因为你会很容易地覆盖一个现存文件!除非你想代替该文件,请确保你所创建的文件名与已经存在的文件名不一样。

再把输出重导向到另一个文件,暂且把它叫做 home.txt 。在这个例子中,键入命令 cat > home.txt ,然后按 [Enter] ,其后跟随:

bring the coffee home take off shoes put on sneakers make some coffee relax! 现在,在一个空行上,使用 [Ctrl] - [D] 键组合来退出 cat 。

下一步,使用 cat 把 home.txt 和 sneakers.txt 连接起来,然后再把两个文件的输出重导向到一个叫做 saturday.txt 的新文件(你会在图 13-7中发现一个示例)。键入下面的命令:

cat sneakers.txt home.txt > saturday.txt

图 13-7. 连接文件和重导向输出

你可以看到 cat 已经把 home.txt 添加到 sneakers.txt 的结尾处。

13.9.2. 后补标准输出 你可以使用输出重导向来在一个现存文件之后添加新信息。这与你使用 > 符号相似,你是在告诉 shell 把信息发送到标准输出之外的某个地方。

然而,当你使用 >> 时,你是在给文件 添加 信息,而不是完全替换文件内容。

最好的解释方法是向你演示实例。我们便使用刚才已创建的两个文件( sneakers.txt 和 home.txt ),然后使用后补输出的符号把它们连接起来。你想把 home.txt 的信息添加到 sneakers.txt 的信息中去,因此键入:

cat home.txt >> sneakers.txt 现在,使用 cat sneakers.txt 的命令来检查一下。最终的输出在文件结尾处显示了 home.txt 的内容:

buy some sneakers then go to the coffee shop then buy some coffee bring the coffee home take off shoes put on sneakers make some coffee relax! 你键入的命令把文件 home.txt 的输出后补到文件 sneakers.txt 中去。

通过后补输出,你利用了现存文件而不必创建新文件,从而为自己节省些时间(以及一些磁盘群集)。

现在比较一下文件 sneakers.txt 和文件 saturday.txt 的结果,你就会看到它们一模一样。要做比较,键入:

cat sneakers.txt; cat saturday.txt 这两个文件的内容都会被显示 — 先是 sneakers.txt 文件,然后是 saturday.txt 文件 (如图13-8所示)。

图 13-8. 串联命令和比较文件

13.9.3. 重导向标准输入 你不但可以重导向标准输出,还可以重导向标准输入。

当你使用重导向标准输入符号 < 时,你是在告诉 shell 你想使用某个文件作为命令的输入。

使用一个你已创建的文件来演示这一概念。键入:

cat < sneakers.txt 因为你用来分隔 cat 命令和文件的是小于号(<), sneakers.txt 的输出就被 cat 命令读取。

图 13-9. 重导向标准输入

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有