草庐IT

git - 如何通过管道将 git clone 传输到存档(tar 或 gzip)

我正在尝试为远程托管的git存储库制作一个简单的备份脚本。在脚本中,我有几行目前看起来像这样:gitclonegit@server:repo.git$DESTtarczvfrepo.tgz$DESTrm-rf$DEST有没有办法让这一切在一行中发生?我可以将gitclone通过管道传输到tar命令吗?我不需要克隆的目录,我只需要它的压缩存档。我尝试了一些实验,但似乎无法弄清楚语法。 最佳答案 不,你不能只是管道gitclone因为它不会将它写到标准输出。为什么你需要单线?他们非常适合吹嘘您可以在一行中做一些很酷的事情,但在现实世界中

git - 如何通过管道将 git clone 传输到存档(tar 或 gzip)

我正在尝试为远程托管的git存储库制作一个简单的备份脚本。在脚本中,我有几行目前看起来像这样:gitclonegit@server:repo.git$DESTtarczvfrepo.tgz$DESTrm-rf$DEST有没有办法让这一切在一行中发生?我可以将gitclone通过管道传输到tar命令吗?我不需要克隆的目录,我只需要它的压缩存档。我尝试了一些实验,但似乎无法弄清楚语法。 最佳答案 不,你不能只是管道gitclone因为它不会将它写到标准输出。为什么你需要单线?他们非常适合吹嘘您可以在一行中做一些很酷的事情,但在现实世界中

linux - Gzip:符号链接(symbolic link)级别太多

伙计们。我在Ubuntu10.10(这是我的家庭互联网服务器)上的gzip我的/etc/文件夹错了。因此,错误的gzip命令将/etc/文件夹中的原始文件更改为.gz文件。服务器现在不启动。然后我用Ubuntulive从磁盘启动并尝试在/etc/中提取文件:gunzip-r*.*/etc/但是我对某些文件有问题:file.gz的符号链接(symboliclink)级别太多有什么建议么?(我需要提取所有替换文件来恢复我的系统) 最佳答案 查看gzip的手册页(mangzip),或阅读此命令的输出:gzip--help|less也许,你

linux - Gzip:符号链接(symbolic link)级别太多

伙计们。我在Ubuntu10.10(这是我的家庭互联网服务器)上的gzip我的/etc/文件夹错了。因此,错误的gzip命令将/etc/文件夹中的原始文件更改为.gz文件。服务器现在不启动。然后我用Ubuntulive从磁盘启动并尝试在/etc/中提取文件:gunzip-r*.*/etc/但是我对某些文件有问题:file.gz的符号链接(symboliclink)级别太多有什么建议么?(我需要提取所有替换文件来恢复我的系统) 最佳答案 查看gzip的手册页(mangzip),或阅读此命令的输出:gzip--help|less也许,你

linux - 合并排序 gzip 文件

我有40个文件,每个文件2GB,存储在NFS架构上。每个文件包含两列:一个数字ID和一个文本字段。每个文件都已经过排序和gzip压缩。如何合并所有这些文件,以便对生成的输出进行排序?我知道sort-m-k1应该可以解决未压缩文件的问题,但我不知道如何直接处理压缩文件。PS:我不想要将文件解压缩到磁盘、合并它们并再次压缩的简单解决方案,因为我没有足够的磁盘空间。 最佳答案 这是一个进程替换的用例。假设您有两个文件要排序,sorta.gz和sortb.gz.您可以给出gunzip-cFILE.gz的输出使用对这两个文件进行排序外壳运算符

linux - 合并排序 gzip 文件

我有40个文件,每个文件2GB,存储在NFS架构上。每个文件包含两列:一个数字ID和一个文本字段。每个文件都已经过排序和gzip压缩。如何合并所有这些文件,以便对生成的输出进行排序?我知道sort-m-k1应该可以解决未压缩文件的问题,但我不知道如何直接处理压缩文件。PS:我不想要将文件解压缩到磁盘、合并它们并再次压缩的简单解决方案,因为我没有足够的磁盘空间。 最佳答案 这是一个进程替换的用例。假设您有两个文件要排序,sorta.gz和sortb.gz.您可以给出gunzip-cFILE.gz的输出使用对这两个文件进行排序外壳运算符

linux - 拆分 gzip 日志文件而不将未压缩的拆分存储在磁盘上

我有一个经常性的任务,将一组大的(每个大约1-2GiB)gzippedApache日志文件分成几个部分(比如500K行的block)。应再次对最终文件进行gzip压缩以限制磁盘使用量。在Linux上我通常会这样做:zcatbiglogfile.gz|split-l500000生成的文件文件将被命名为xaa、xab、xac等所以我这样做:gzipx*此方法的效果是,作为中间结果,这些巨大文件被临时存储在磁盘上。有没有办法避免这种中间磁盘使用?我可以(以类似于xargs的方式)通过命令(如gzip)拆分管道输出并即时重新压缩输出吗?还是我看错了方向,是否有更好的方法来做到这一点?谢谢。

linux - 拆分 gzip 日志文件而不将未压缩的拆分存储在磁盘上

我有一个经常性的任务,将一组大的(每个大约1-2GiB)gzippedApache日志文件分成几个部分(比如500K行的block)。应再次对最终文件进行gzip压缩以限制磁盘使用量。在Linux上我通常会这样做:zcatbiglogfile.gz|split-l500000生成的文件文件将被命名为xaa、xab、xac等所以我这样做:gzipx*此方法的效果是,作为中间结果,这些巨大文件被临时存储在磁盘上。有没有办法避免这种中间磁盘使用?我可以(以类似于xargs的方式)通过命令(如gzip)拆分管道输出并即时重新压缩输出吗?还是我看错了方向,是否有更好的方法来做到这一点?谢谢。

linux - 如何 gzip bash 中所有子目录中的所有文件

我想遍历我当前位置的子目录并分别gzip每个文件。对于目录中的压缩文件,我使用forfilein*;dogzip"$file";done但这只适用于当前目录,而不适用于当前目录的子目录。我怎样才能重写上面的语句,以便它也压缩所有子目录中的文件? 最佳答案 除了find和gzip之外不需要循环或任何东西:find.-typef!-name'*.gz'-execgzip"{}"\;这将查找当前目录中和当前目录下所有名称不以.gz扩展名结尾的常规文件(即所有尚未压缩的文件)。它对每个文件单独调用gzip。编辑,根据来自未知用户的评论:花括

linux - 如何 gzip bash 中所有子目录中的所有文件

我想遍历我当前位置的子目录并分别gzip每个文件。对于目录中的压缩文件,我使用forfilein*;dogzip"$file";done但这只适用于当前目录,而不适用于当前目录的子目录。我怎样才能重写上面的语句,以便它也压缩所有子目录中的文件? 最佳答案 除了find和gzip之外不需要循环或任何东西:find.-typef!-name'*.gz'-execgzip"{}"\;这将查找当前目录中和当前目录下所有名称不以.gz扩展名结尾的常规文件(即所有尚未压缩的文件)。它对每个文件单独调用gzip。编辑,根据来自未知用户的评论:花括