gpt4 book ai didi

linux - 在 Linux 中合并不同文件夹中的两个文件

转载 作者:IT王子 更新时间:2023-10-29 00:50:30 35 4
gpt4 key购买 nike

我有两组文件夹,其中的文件具有相同的文件名和结构。文件夹结构是这样的:

\outputfolder\
|---\folder1\
| |---file1.txt
| |---file2.txt
|
|---\folder2\
|---file1.txt
|---file2.txt

所以我需要做的是将这些文件夹中的所有同名文件(file1.txt 和 file1.txt 等)组合(附加)到输出文件夹内的另一个文件中。获得这些组合文件后,我还需要从所有这些组合文件创建一个 tar.gz 文件。

如何在基于 Linux 的命令行环境中完成此操作?文件夹名称(folder1 和 folder2 等)是可变的,因此需要给出,但文件不需要,它应该自动组合所有具有相同名称的文件。

另外,这些文件有列名的标题,所以我需要在追加时也删除它。

最佳答案

这里有一些代码可以让你开始

topdir=outputfolder
dir1=folder1
dir2=folder2

for f in $topdir/$dir1/*.txt
do
outf=$topdir/`basename $f .txt`-concat.txt
cp $f $outf
sed -e '1 d' $topdir/$dir2/`basename $f` >> $outf
done

tar czf foo.tar.gz $topdir/*-concat.txt

编辑:添加了删除第二个文件标题的部分。

关于linux - 在 Linux 中合并不同文件夹中的两个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6453458/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com