From dc6d6e028489996d4bfd12b28147b86e5cf0551e Mon Sep 17 00:00:00 2001 From: heqnx Date: Mon, 12 May 2025 20:27:03 +0300 Subject: added split-file.sh --- split-file.sh | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 split-file.sh diff --git a/split-file.sh b/split-file.sh new file mode 100644 index 0000000..c8f785a --- /dev/null +++ b/split-file.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +if test "${#}" -ne 2; then + printf "%s\n" \ + "split file into N parts" \ + "usage: $(basename $0) " + exit 1 +fi + +if ! command -v split &>/dev/null; then + printf "%s\n" "split not found" + exit 1 +fi + +file="${1}" +parts="${2}" +filename="${file%.*}" +extension="${file##*.}" +total_lines=$(wc -l < "${file}") +lines_per_part=$((total_lines / parts + 1)) +split -l "${lines_per_part}" -d --additional-suffix=".${extension}" "${file}" "${filename}_" -- cgit v1.2.3