Я использовал
git add `cat filelist`
У меня было всего 100 файлов. 1000s могут быть проблематичными.
А может и нет. Используйте «-n» для пробного прогона.
Если вы хотите использовать переменные в sed, используйте двойные кавычки вместо одинарных
Согласно вашему примеру, у вас есть переменные в sed
sudo sed -i "s|^GRUB_DEFAULT=.*$|GRUB_DEFAULT=\"$win_location\"|g" /etc/default/grub