Мне нужно создать символическую ссылку, которая должна создать резервную копию файла (если он уже существует) с суффиксом даты и удалить исходный файл. Я убежден, что что-то упустил ...
Я делаю это
ln -v -b -f -s the_link original_file -t my_dir -S "20191101"
На странице man:
-b:резервное копирование, если файл уже существует
-f: принудительное удаление, если файл существует
-s: символическое (мягкая ссылка)
-t: каталог назначения
-S: суффикс, заменяющий обычный суффикс резервного копирования
-v: подробный
ln сначала создает правильную ссылку the_link -> original_file
, но после этого, я думаю, она создает другую ссылку original_file -> original_file
. По крайней мере, многословие дает мне это:
/home/engdev/PFE/appl/lib/libCsReport.so -> '/home/engdev/PFE/#5799_-_2019-195_19002034_-_Desativação_ASP/appl_#5799_-_2019-195_19002034_-_Desativação_ASP/lib/libCsReport.so'
/home/engdev/PFE/appl/lib/libCsReport.so -> libCsReport.so
И, конечно, ссылка не работает.
Заранее благодарен за любую помощь.
Вот мой код:
for file in `ls plat_#5799_-_2019-195_19002034_-_Desativação_ASP/lib | awk -F "/" "{print $NF}"`
do
echo "creating backup: file: $HOME/PFE/plat/lib/$file"
echo "linking new lib: file: plat_#5799_-_2019-195_19002034_-_Desativação_ASP/lib/$file"
ln -v -b -f -s $PWD/plat_#5799_-_2019-195_19002034_-_Desativação_ASP/lib/$file $file -t $HOME/PFE/plat/lib/ -S "20191101"
done
for file in `ls appl_#5799_-_2019-195_19002034_-_Desativação_ASP/lib | awk -F "/" "{print $NF}"`
do
echo "creating backup: file: $HOME/PFE/appl/lib/$file"
echo "linking new lib: file: appl_#5799_-_2019-195_19002034_-_Desativação_ASP/lib/$file"
ln -v -b -f -s $PWD/appl_#5799_-_2019-195_19002034_-_Desativação_ASP/lib/$file $file -t $HOME/PFE/appl/lib/ -S "20191101"
done