metin dosyalarını birden fazla klasörde birleştir


1

Her klasörde birkaç metin dosyası bulunan yüzlerce klasörüm var. Her klasörün dosyalarını tek bir metin dosyasına birleştirmeye çalışıyorum. Her klasör için bir dosya. İdeal olarak, birleştirilmiş dosyalar başka bir yere kaydedilir.

Yanıtlar:


2

Basit bir komut dosyası ile yapabilirsiniz:

#!/bin/bash

directories="/your/path/dir1 /your/path/dir2 /your/path/dir3"

for d in $directories
do
        cat $(find $d -name "*.txt") > $(echo $d | sed 's/\///g').txt
done

Bu script her txt dosyasını bir araya getirecek /your/path/dir1ve yourpathdir1.txtgerçek yolunuzdaki gibi kaydedecektir. Sonra aynı yapacak dir2ve dir3.


Teşekkürler @jherran. Ne yazık ki çalışıyor gibi görünmüyor. Aşağıdaki hatayı alıyorum "/My/path/file.txt/ \: Böyle bir dosya veya dizin yok". Adamım, bu şeyleri daha iyi tanımak isterdim, beni gerçekten yaklaştırdığınızı hissediyorum.
yogert909
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.