-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathreplaceomatic
More file actions
executable file
·66 lines (55 loc) · 1.37 KB
/
replaceomatic
File metadata and controls
executable file
·66 lines (55 loc) · 1.37 KB
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#!/usr/bin/bash
Tmp=/tmp/$$
Tmp0=/tmp/$$_$$
Tmp1=/tmp/$$_$$_$$
Tmp2=/tmp/$$_$$_$$_$$
Tmp3=/tmp/$$_$$_$$_$$_$$
trap 'exit 0' INT HUP QUIT TERM ALRM USR1
trap 'rm -f "$Tmp" "$Tmp0" "$Tmp1" "$Tmp2" "$Tmp3"' EXIT
rm -f "$Tmp $Tmp0 $Tmp1 $Tmp2 $Tmp3" >/dev/null 2>&1;
# >/dev/null 2>&1;
source /home/mestes/scm/basics/bash.library
UPDATE="NO"
REMOTE="YES"
while getopts "bt" arg
do
case $arg in
b) UPDATE="BASH"
;;
t) UPDATE="TOC"
;;
esac
done
shift $(($OPTIND - 1))
filename="$1"
if [[ -z "$filename" ]]; then
echo "Error: Filename not provided."
exit 1
fi
if [[ ! -f "$filename" ]]; then
echo "Error: File '$filename' not found."
exit 1
fi
D=`date`
if [ "$UPDATE" == "BASH" ]; then
core.print.echo "#!/usr/bin/bash"
fi
if [ "$UPDATE" == "TOC" ]; then
echo "# ####################################################################################################"
cat toc
echo "# ####################################################################################################"
echo "#"
echo "#"
fi
cat "$filename" | gawk '
BEGIN {
flag=0;
}
/^# ##END/ {
flag=1;
print $0;
next;
}
(flag==1) {
print $0;
}'