Я пытаюсь рекурсивно создавать каталоги через ssh.
Каталог /home/user/staging существует. Но у пользователя нет прав на чтение / дом. mkdir не знает, существует ли /home/user и пытается его создать.
mkdir -p /home/user/staging/first/second/third/fourth/
mkdir: cannot create directory ‘/home/user’: Permission denied
Как пропустить этот каталог и продолжать создавать, где у пользователя есть разрешение?
Я пытаюсь сделать это с помощью моего собственного сценария,
rec()
{
dir=$1
if [[ ! -e $dir ]]; then
echo "creating $dir"
newdir=$(echo $dir | sed 's:/[^/]*$::')
rec $newdir
mkdir $dir
fi
}
По какой-то причине эта проверка не проходит, если [[! -e $ dir]] и цикл проходит мимо существующих директорий и в итоге ничего не создает.