From 0dc96cf2613862d0d948977323bd5fa437c253f7 Mon Sep 17 00:00:00 2001 From: friedliche Date: Tue, 25 Feb 2020 01:57:07 +0100 Subject: [PATCH 1/3] added one time mv1 --- .bashrc | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/.bashrc b/.bashrc index 54d018f..669002d 100755 --- a/.bashrc +++ b/.bashrc @@ -6,6 +6,7 @@ alias nano1=hell_nano alias exec1=hell_exec alias echo1=hell_echo alias touch1=hell_touch +alias mv1=hell_mv hell_ls() { args="$@" @@ -67,6 +68,51 @@ hell_touch() { mkdir -p .files && touch .files/"${filename}" } +hell_mv() { + arr=( "$@" ) + declare -a exts + declare -a randarr + + for arg in "${arr[@]}"; do + filename="${arg##*/}" + + count=$(echo "$filename" | grep -o "\." | wc -l) + if [ "$count" -gt 0 ]; then + exts=("${filename#*.}" "${exts[@]}") + fi + done + + if [ "${exts[0]}" == "${exts[1]}" ]; then + filename_dst="${arr[1]##*/}" + dst_name="${filename_dst%%.*}" + + dir=$(dirname "${arr[1]}") + files=($dir/*."${exts[1]}") + + filename_src="${arr[0]##*/}" + if [[ ! "${files[@]}" =~ "$filename_src" ]]; then + echo "File '$filename_src' not in directory '$dir'." + return 0 + fi + + count=$(ls "$dir"/*."${exts[1]}" | wc -l) + + readarray randarr < <(seq "$count" | shuf) + + echo ${randarr[@]} + echo ${files[@]} + for ((i=0;i Date: Tue, 25 Feb 2020 02:04:59 +0100 Subject: [PATCH 2/3] added one time mv1 --- .bashrc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.bashrc b/.bashrc index 669002d..128baf3 100755 --- a/.bashrc +++ b/.bashrc @@ -104,6 +104,11 @@ hell_mv() { for ((i=0;i Date: Tue, 25 Feb 2020 16:15:02 +0100 Subject: [PATCH 3/3] multiple use --- .bashrc | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/.bashrc b/.bashrc index 128baf3..375f8d8 100755 --- a/.bashrc +++ b/.bashrc @@ -86,26 +86,28 @@ hell_mv() { filename_dst="${arr[1]##*/}" dst_name="${filename_dst%%.*}" - dir=$(dirname "${arr[1]}") - files=($dir/*."${exts[1]}") + dir_dst=$(dirname "${arr[1]}") + files_dst=($dir_dst/*."${exts[1]}") filename_src="${arr[0]##*/}" - if [[ ! "${files[@]}" =~ "$filename_src" ]]; then - echo "File '$filename_src' not in directory '$dir'." + dir_src=$(dirname "${arr[0]}") + files_src=($dir_src/*."${exts[1]}") + if [[ ! "${files_src[@]}" =~ "$filename_src" ]]; then + echo "File '$filename_src' not in directory '$dir_src'." return 0 fi - count=$(ls "$dir"/*."${exts[1]}" | wc -l) + count=$(ls "$dir_dst"/*."${exts[1]}" | wc -l) readarray randarr < <(seq "$count" | shuf) echo ${randarr[@]} - echo ${files[@]} + echo ${files_dst[@]} for ((i=0;i