Linux常用管道:修订间差异
跳到导航
跳到搜索
无编辑摘要 |
(→tar) |
||
(未显示另一用户的1个中间版本) | |||
第1行: | 第1行: | ||
管道是Linux中很重要的一种通信方式,是把一个程序的输出直接连接到另一个程序的输入,常说的管道多是指无名管道。有名管道叫named pipe或者FIFO(先进先出),可以用函数mkfifo()创建。 | 管道是Linux中很重要的一种通信方式,是把一个程序的输出直接连接到另一个程序的输入,常说的管道多是指无名管道。有名管道叫named pipe或者FIFO(先进先出),可以用函数mkfifo()创建。 | ||
==== 管道的结构 ==== | ==== 管道的结构 ==== | ||
第15行: | 第14行: | ||
* 不包括路径 | * 不包括路径 | ||
** --exclude=$PATH1 --exclude=$PATH2 | ** --exclude=$PATH1 --exclude=$PATH2 | ||
* 解决打包同一批文件 hash 不同问题 | |||
** tar -c pangolin | gzip -n > pangolin.tar.gz | |||
[[分类:Develop]] | [[分类:Develop]] | ||
[[分类:Linux]] | [[分类:Linux]] |
2024年7月22日 (一) 09:56的最新版本
管道是Linux中很重要的一种通信方式,是把一个程序的输出直接连接到另一个程序的输入,常说的管道多是指无名管道。有名管道叫named pipe或者FIFO(先进先出),可以用函数mkfifo()创建。
管道的结构
在 Linux 中,管道的实现并没有使用专门的数据结构,而是借助了文件系统的file结构和VFS的索引节点inode。通过将两个 file 结构指向同一个临时的 VFS 索引节点,而这个 VFS 索引节点又指向一个物理页面而实现的。
gzip
gzip -dc filename.gz | wc -l
unzip
unzip -cq ${HN} '*.csv' | wc -l
tar
- 不指定解压文件或目录,则输出全部
- hadoop fs -cat /bakdata/gio/visit/visit_202102.tar.gz |tar -xzv 20210201.csv
- 不包括路径
- --exclude=$PATH1 --exclude=$PATH2
- 解决打包同一批文件 hash 不同问题
- tar -c pangolin | gzip -n > pangolin.tar.gz