Адреса Ubuntu/etc/hosts в форме *. *. *. *

Спасибо всем в этом вопросе, который помог мне, это ответ, который я придумал, он находит все директории, которые являются 4-м каталогом, вне корневого каталога / папки, а затем переходит в один каталог за раз, получает все файлы и работает с ними в самом внутреннем цикле. после того, как все выбранные файлы завершены, он перемещается на следующую, основанную на их 4-м месте, и его подкаталог затем делает то же самое

, контролируемое вводом пользователя, о том, сколько директорий он хочет, чтобы он работал и где

#!/bin/bash

typeset -i f d control DirCountDn fileCount dirCount
let f=0 d=0 control=1  DirCountDn=0 fileCount=0 dirCount=0

amount_of_dir_to_work_on="4"

working_dir="/media/data/music"


   #CONTROL LOOP keeps it one dir at a time
        for i in 1
        do
            # get all of the names of the base dir to change name  a var containing ampunt of basenamedir in last place here 
            find "$working_dir" -mindepth 1 -maxdepth 1 -type d | while [ $DirCountDn  -lt $amount_of_dir_to_work_on ] ; 
                do read DIRNAME;
                    echo "$DIRNAME"
                    echo
                    MAXMP3="$(find "$DIRNAME" -type f -name "*.mp3" | wc -l)"
                    echo;echo;echo
                    echo "amount of mp3 "$MAXMP3" in "$DIRNAME""
                    echo;echo;echo;echo
                        find "$DIRNAME" -type f -name "*.mp3" | while [ $fileCount -lt $MAXMP3 ] ;
                        do read FILENAME;
                            echo;echo
                            echo "***************************************"
                            echo "FILENAME is "$FILENAME""
                            DIRNAME=${DIRNAME#*/*/*/*/} 
                            DIRNAME=${DIRNAME//\/*}
                            echo "DIRNAME is "$DIRNAME""
                            echo
                            echo " work each mp3 file in incurments until Dir is finised will all mp3 files" 
                            echo "rename dir then make provisons to move it somewhere else"
                            echo "then move it - go onto nest directory within the tree root dir"
                            echo "amount of filename "$fileCount""
                            echo "******************************************"
                            let fileCount++
                            echo "count on file names "$fileCount""
                            echo;echo

                        done
                let dirCount++
                echo "Dir Count "$dirCount""
                echo;echo
                let DirCountDn++

                #reset fileCount for next dir
                let fileCount=0
                done

                echo "this is i -> "$i""
        done

 # returns sub dir only one deep and not working dir
#find /dir/dir/dir/getThisOneNameOnly  -mindepth 1 -maxdepth 1  -type d   -exec basename {} \;
0
12.08.2018, 21:54
1 ответ

Оказалось, что это аппаратный дефект. Я получил новый диск, и все работает, как и ожидалось.

0
28.01.2020, 04:15

Теги

Похожие вопросы