Я пишу сценарий для копирования файлов из папок под одной директорией в общую папку. Для этого мне нужно перебирать папки в каталоге. Папки по дате, поэтому я использую меньше и больше. Но я не могу попасть в петлю. Не могли бы вы сообщить мне, что не так с моим кодом.Копирование файлов из папок в один каталог в общую папку
#!/usr/bin/ksh
SCRIPT_DIRECTORY='/abc/script'
DATA_DIRECTORY='/a/inbox'
TARGET_DIRECTORY='/abc/final'
START_DATE=$2
END_DATE=$3
if [ $1 == 'a' ]
then
while [[ $2 -gt 20151201 ]] && [[ $3 -lt 20151231 ]]
do
for file in `ls $DATA_DIRECTORY`
do
cp name* $TARGET_DIRECTORY
done
done
fi
Здесь папки под Директория/Входящие сделаны datewise начиная с 20151201 до 20151231. Таким образом, мне нужно, чтобы извлечь все файлы, начиная от названия к общей целевой директории Я также пытаюсь сделать это как скрипт, где, если я передаю параметры, такие как a, b, c, он перейдет в соответствующий каталог данных и выберет файлы оттуда
Это приводит к синтаксической ошибке строка 13: ((:> 20151201 && <20151231: ошибка синтаксиса: операнд ожидаемой (маркер ошибки "> 20151201 && <20151231") – Pranav
Либо вы забыли ввести параметры, или параметры пусты. Вы можете проверить это с помощью 'while (($ {2:? two}> 20151201 && $ {3:? three} <20151231))'. – user1934428