Files
lnx-arch/dots/bin/tp.sh
committer 4a3722acbb u
2024-06-10 13:05:44 -05:00

47 lines
1.3 KiB
Bash
Executable File

#!/usr/bin/env bash
# klevstul :: 24.06
this_file_name=`basename "$0"`
if [ $# -lt 1 ]; then
echo "error: path to file is missing."
echo "usage: '$this_file_name [path_to_file]'"
exit 1
fi
#input_file=$1
input_files=( "$@" )
sync_dir_sym=/home/${USER}/syncDir
syncdir_env_var=SYNCDIR_${HOSTNAME}
sync_dir=${!syncdir_env_var} # '!' to use the name and not the value
cwd=$(pwd)
# nifty for debugging:
echo ${input_files}
#echo ${sync_dir_sym}
#echo ${sync_dir}
#echo ${cwd}
# if input file has not path specified
if [[ ${input_file} != *"/"* ]]; then
input_file=${cwd}/${input_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