Im пытается запустить этот скрипт, который в основном копирует загруженный файл в другой каталог - при его запуске файл копируется нормально, но право собственности на файл не изменяется на sales1upload.dba как я ожидал, в то время как он производит следующую ошибку на выходе:Владение файлом не меняется в сценарии bash
Чаун: не может получить доступ к `test1.txt ': нет такого файла или каталога
#!/bin/bash
BASE_DIR="/home/sales1upload/upload"
NEW_BASE_DIR="/bbc/prod/today"
current_time=$(date "+%Y.%m.%d-%H.%M.%S")
for file in $(ls ${BASE_DIR});
do
filename=${file}
new_filename=$filename.$current_time
#set user permissions as desired
chown sales1upload.dba "$filename"
cp -prf ${BASE_DIR}/${filename} ${NEW_BASE_DIR}/"moved_files"/$new_filename
cp -prf ${BASE_DIR}/${filename} ${NEW_BASE_DIR}
rm ${BASE_DIR}/${filename}
done
Где я буду неправильно с принадлежностью файла в скрипте ?
Это [бесполезное использование 'ls'] (http://www.iki.fi/era/unix/award.html#ls). Вы хотите просто 'для файла в $ {BASE_DIR}/*'. См. Также http://mywiki.wooledge.org/ParsingLs – tripleee
У вас есть ошибки? – 123