added file_copy_default_if_not_present() and replace_var_value_in_script()

This commit is contained in:
2025-11-09 23:09:34 +05:00
parent 579dd5916e
commit 6bfc0f5e9a
4 changed files with 29 additions and 4 deletions

View File

@@ -5,7 +5,9 @@ include "@cbuild/include/myprint.sh"
function exec_script_line {
local script="$1"
local line_num="$2"
#bool
local quiet=$3
myprint_quiet $quiet "${BLUE}reading line $line_num from $script"
local line_str="$(sed $line_num'!d' $script)"
if [ -z "$line_str" ]; then
@@ -15,6 +17,18 @@ function exec_script_line {
eval "$line_str"
}
function replace_var_value_in_script(){
local script="$1"
local var_name="$2"
local new_value="$3"
myprint "${BLUE}setting $var_name to ${CYAN}'$new_value' in '$script'"
cp "$script" "$script.tmp"
sed "s,$var_name=\".*\",$var_name=\"$new_value\",g" \
"$script.tmp" > "$script"
rm "$script.tmp"
}
function clean_dir {
local dir="$1"
myprint "${WHITE}cleaning $dir"
@@ -36,6 +50,15 @@ function try_delete_dir_or_file {
fi
}
file_copy_default_if_not_present(){
local file="$1"
local file_default="$2"
if [ ! -f "$file" ]; then
myprint "${YELLOW}creating default ${WHITE}$file"
cp -r "$file_default" "$file"
fi
}
function exec_command {
local command="$@"
if [ ! -z "$command" ]; then