aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkaotisk <kaotisk@arching-kaos.org>2024-06-11 06:31:17 +0300
committerkaotisk <kaotisk@arching-kaos.org>2024-06-11 06:31:17 +0300
commit5654e0097de3df6bb8fde1541e2871a9ac81fcbc (patch)
tree814d18ffda03ef627f2ab804d7d1351565d49089
parent15ba7f59a6cc7cbf714bc922640293e877c524ae (diff)
downloadarching-kaos-tools-5654e0097de3df6bb8fde1541e2871a9ac81fcbc.tar.gz
arching-kaos-tools-5654e0097de3df6bb8fde1541e2871a9ac81fcbc.tar.bz2
arching-kaos-tools-5654e0097de3df6bb8fde1541e2871a9ac81fcbc.zip
(new lib) _ak_fm: File manipulation functions
-rwxr-xr-xlib/_ak_fm32
1 files changed, 32 insertions, 0 deletions
diff --git a/lib/_ak_fm b/lib/_ak_fm
new file mode 100755
index 0000000..0d84fcd
--- /dev/null
+++ b/lib/_ak_fm
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+_ak_fm_remove_line_from_file(){
+ tempfile="$(mktemp)"
+ if [ ! -f "$2" ]
+ then
+ logit "ERROR" "$2 does not exist"
+ exit 1
+ fi
+ grep "$1" "$2" > /dev/null 2>&1
+ if [ $? -ne 0 ]
+ logit "ERROR" "Could not find line: $1 in $2"
+ exit 1
+ fi
+ grep -v "$1" "$2" > $tempfile
+ cat $tempfile > $2
+ rm $tempfile
+}
+
+_ak_fm_sort_uniq_file(){
+ if [ ! -f "$1" ]
+ then
+ logit "INFO" "No file to process"
+ else
+ logit "INFO" "Sorting $1..."
+ tempfile="$(mktemp)"
+ cat "$1" | sort | uniq > $tempfile
+ cat $tempfile > $1
+ rm $tempfile
+ logit "INFO" "Sorting $1... Done!"
+ fi
+}