Home

Menggabungkan Seluruh File teks dalam Folder Linux

Mari berdiskusi bersama kami di Group Facebook Kurung Kurawal

Jadi ceritanya Musim Skripsi. Paper selesai, program lancar, dan sidang-pun mulus. Revisi juga diselesaikan dengan baik. Singkat cerita, tibalah kita pada ending penderitaan skripsi. Setelah mengemis-ngemis tanda tangan dosen dengan berbagai cara, misalnya nungguin beberapa Jam (ya, beberapa ratus ribu detik), atau ditunda-tunda terus karena dosennya sibuk, akhirnya HardCover laporan skripsi bisa diselesaikan. Dan ternyata itu belum berakhir, pengumpulan Skripsi harus dilengkapi dengan Disc yang berisi paper, lengkap dengan seluruh Source Code yang digunakan untuk membuat program skripsi tersebut.

So, Jika anda pengguna Linux, mudah-mudah script dibawah ini bisa membantu untuk “mengumpulkan” seluruh sourcecode program anda menjadi 1 file saja, yang siap di-copas ke perangkat lunak pengolah data, yaaa, yang file nya berekstensi .doc atau .docx itu lho.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/bin/bash
# Copyright Konglie ([email protected])
# Script sederhana untuk menggabungkan seluruh file text dari berbagai jenis ekstensi file
# dalam satu folder menjadi 1 file.
#
# Cara penggunaaan
# nama_script folder_yang_ingin_diolah
#
# Contoh
# ./myscript MyProgramFolder
 
# Lokasi file tujuan
DEST="/tmp/seluruh_script.txt";
 
# File Tujuan akan di-truncate, alias dikosongi.
> $DEST;
 
function doScan(){
    ls -a $1 | while read f; do
        if [ "$f" = "." -o "$f" = ".." ]; then
            continue;
        fi;
 
        if [ -d "$1/$f" ]; then
            doScan "$1/$f";
            continue;
        fi;
 
        # script ini hanya memproses file text saja, file gambar atau binary lain tidak diikutsertakan
        if  file -bi "$1/$f" | grep -iq "text"; then
            echo "Memproses file $1/$f";    
            echo "File $1/$f" >> $DEST;
            cat "$1/$f" >> $DEST;
            echo "" >> $DEST;
            echo "" >> $DEST;
        fi;
    done;
}
 
doScan $1;

Semoga Script ini bisa berguna. Jika tampilan diatas kurang menarik, bisa lihat di alternatif https://gist.github.com/konglie/8450817.