Я пытаюсь написать функцию для оболочки, чтобы удалять файлы истории в каталоге и удалять те, которые не являются текущим запущенным процессом. Я столкнулся с проблемой, связанной с вариантом использования: файлы не существуют и xargs rm
вызывается с пустым аргументом.
У кого-нибудь есть предложения по обработке этого пустого случая без использования временных файлов?
Спасибо
function purge_hist {
for i in $(comm -23 <(sort -n <(ls $HOME/.hist/history.* | \
sed "s#$HOME/.hist/history.##")) < \
(sort <(for i in $(ps -ex -o pid | sed 1d);
do
echo $i ;
done)));
do
echo "$HOME/.hist/history.$i";
done | xargs rm -f
}
ОБНОВЛЕННОЕ РЕШЕНИЕ работает