scripts/env: make mv and cp operations more robust (treat dotfiles appropriately) (based on patch by Rolf Leggewie)

SVN-Revision: 29261
This commit is contained in:
Felix Fietkau 2011-11-19 17:15:50 +00:00
parent b9eb659364
commit 6b929e2687

View file

@ -138,7 +138,9 @@ env_clear() {
env_sync_data env_sync_data
if ask_bool 1 "Do you want to keep your current config and files"; then if ask_bool 1 "Do you want to keep your current config and files"; then
mkdir -p "$BASEDIR/files" mkdir -p "$BASEDIR/files"
shopt -s dotglob
cp -a "$ENVDIR/files/"* "$BASEDIR/files" 2>/dev/null >/dev/null cp -a "$ENVDIR/files/"* "$BASEDIR/files" 2>/dev/null >/dev/null
shopt -u dotglob
cp "$ENVDIR/.config" "$BASEDIR/" cp "$ENVDIR/.config" "$BASEDIR/"
else else
rm -rf "$BASEDIR/files" "$BASEDIR/.config" rm -rf "$BASEDIR/files" "$BASEDIR/.config"
@ -193,7 +195,9 @@ env_new() {
if ask_bool 1 "Do you want to keep your current config and files?"; then if ask_bool 1 "Do you want to keep your current config and files?"; then
[ -d "$BASEDIR/files" -a \! -L "$BASEDIR/files" ] && { [ -d "$BASEDIR/files" -a \! -L "$BASEDIR/files" ] && {
mkdir -p "$ENVDIR/files" mkdir -p "$ENVDIR/files"
shopt -s dotglob
mv "$BASEDIR/files/"* "$ENVDIR/files/" 2>/dev/null mv "$BASEDIR/files/"* "$ENVDIR/files/" 2>/dev/null
shopt -u dotglob
rmdir "$BASEDIR/files" rmdir "$BASEDIR/files"
} }
env_sync env_sync