From 4f78ff61a1a2fc1a447ba4c9223a41ba21c6efaf Mon Sep 17 00:00:00 2001 From: committer Date: Mon, 10 Jun 2024 13:13:27 -0500 Subject: [PATCH] + support for multiple input files --- dots/bin/tp.sh | 49 +++++++++++++++++++++++++++---------------------- 1 file changed, 27 insertions(+), 22 deletions(-) diff --git a/dots/bin/tp.sh b/dots/bin/tp.sh index 078feef..45ecc5e 100755 --- a/dots/bin/tp.sh +++ b/dots/bin/tp.sh @@ -8,7 +8,6 @@ if [ $# -lt 1 ]; then echo "usage: '$this_file_name [path_to_file]'" exit 1 fi -#input_file=$1 input_files=( "$@" ) sync_dir_sym=/home/${USER}/syncDir @@ -17,30 +16,36 @@ sync_dir=${!syncdir_env_var} # '!' to use the name and not the value cwd=$(pwd) # nifty for debugging: -echo ${input_files} +#echo ${input_files[@]} #echo ${sync_dir_sym} #echo ${sync_dir} #echo ${cwd} +#echo -# if input file has not path specified -if [[ ${input_file} != *"/"* ]]; then - input_file=${cwd}/${input_file} -fi +# loop through all files to delete +for input_file in ${input_files[@]}; do -# substitute parts of the old path, from using the symlink folder, to the non-symlink folder -# example: -# "/home/poq/syncDir/0_downloads/topBanner.jpg" > "/home/poq/nextcloud/syncDir/0_downloads/topBanner.jpg" -# -# please note, if a file outside of the sync directory is tp'ed, then the replacement will not happen. -# this is great, as trash-put should work normally outside of the sync-dir. and for files residing outside, -# no replacemant should be done. -# -# new_file=${original_string//old_substring/new_substring} -new_file=${input_file//$sync_dir_sym/$sync_dir} + # if input file has not path specified + if [[ ${input_file} != *"/"* ]]; then + input_file=${cwd}/${input_file} + fi -if [[ -f ${new_file} ]] || [[ -d ${new_file} ]] ; then - #trash-put ${new_file} - echo ${new_file} -else - echo "error: unable to delete ${new_file}" -fi + # substitute parts of the old path, from using the symlink folder, to the non-symlink folder + # example: + # "/home/poq/syncDir/0_downloads/topBanner.jpg" > "/home/poq/nextcloud/syncDir/0_downloads/topBanner.jpg" + # + # please note, if a file outside of the sync directory is tp'ed, then the replacement will not happen. + # this is great, as trash-put should work normally outside of the sync-dir. and for files residing outside, + # no replacemant should be done. + # + # new_file=${original_string//old_substring/new_substring} + new_file=${input_file//$sync_dir_sym/$sync_dir} + + if [[ -f ${new_file} ]] || [[ -d ${new_file} ]] ; then + #trash-put ${new_file} + echo ${new_file} + else + echo "error: unable to delete ${new_file}" + fi + +done