generated from Logius-standaarden/ReSpec-template
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsplit_md.sh
executable file
·31 lines (27 loc) · 846 Bytes
/
split_md.sh
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
#!/bin/bash
# Controleer of er een argument is opgegeven voor de basisnaam
if [ "$#" -ne 1 ]; then
echo "Gebruik: echo <inhoud> | $0 <basisnaam_voor_bestanden>"
exit 1
fi
BASENAME=$1
COUNTER=0
CHUNK_FILE=""
# Lees de invoer van stdin regel voor regel
while IFS= read -r line; do
# Controleer of de regel begint met een koptekstniveau 1
if [[ "$line" =~ ^\#\ .+ ]]; then
# Als er een huidig bestand is, verhoog dan de teller
if [ ! -z "$CHUNK_FILE" ]; then
((COUNTER++))
fi
CHUNK_FILE="${BASENAME}_${COUNTER}.md"
# Maak het nieuwe bestand aan
> "$CHUNK_FILE"
fi
# Als er een huidig bestand is, voeg dan de regel toe
if [ ! -z "$CHUNK_FILE" ]; then
echo "$line" >> "$CHUNK_FILE"
fi
done
echo "De invoer is opgesplitst in $COUNTER + 1 stukken."