管道设备文件 命令后带&符号解释

      管道设备文件有时候也被叫做FIFO文件(FIFO是先进先出的意思),从字面上理解,管道设备文件就是从一头流入,从另一头流出。通常我们会在其中做一些工作,以达到我们“吃的是草,挤出来的是奶”的目的,管道文件也有其妙用。  

以前,Unix系统对文件的最大用量用2GB的限制,虽然现在新版本的Linux、Solaris、FreeBSD等不再有此限制,但处理大文件的需求仍然存在,假设您想用镜像(dd命令)的方式来备份一个容量为20GB分区的分区,就会产生一个20GB的文件,根据您磁盘实际的使用状况,这个文件在压缩后可能只有数MB到数GB,我们可以建立一个管道文件来自动实现这个压缩过程。

[root@linux236 root]# mknod mypipe p 
   [root@linux236 root]# ls -l mypipe 
   prw-r--r-- 1 root root 0 Aug 5 23:27 mypipe 
  

在这里,我们建立了一个叫mypipe的管道文件,用ls -l 命令可以看到它的属性是prw-r--r--,用下面的组合命令实现镜像和压缩:

[root@linux236 root]# compress < mypipe >; sda6.img.Z & 
   [root@linux236 root]# dd if=/dev/sda6 of=mypipe 
   [root@linux236 root]# ls sda6.img.Z 
  

第一个命令使得从mypipe管道中流出的文件被压缩为sda.img.Z文件,注意这个命令的结尾必须使用"&"符号。

第二个命令将/dev/sda6分区中的资料道入管道文件mypipe,换句话说,/dev/sda6分区中的数据进入管道,

而压缩文件sda6.img.Z文件从管道中流出。  


Tips:命令后的&代表把命令放入后台执行。当在前台运行某个作业时,终端被该作业占据;而在后台运行作业时,它不会占据终端。可以使用&命令把作业放到后台执行。这样,在那个命令后台执行的同时,你还可以再执行新的命令。

命令格式:command &  

你可能感兴趣的:(linux,管道,pipe)