#glob #fish
Вопрос:
Файлы имеют общий шаблон.
feed_predict.data.4.202.0
feed_predict.mdl.4.202.0
feed_predict.so.4.202.0
feed_predict.xml.4.202.0
Я хочу перемещать файлы пакетами.
for x in feed_predict{.*}4.202.0;
//ls $x //nothing prints here
sudo mv $x $1.4.17.0;
end
Но здесь $x пуст.
Комментарии:
1. Это должно быть
for x in feed_predict*4.202.0; do.... done
2. Кстати, это не проблема с регулярным выражением, это проблема с глобусом и, как правило, *nix/fish.
Ответ №1:
Вы можете использовать базовое имя со старым суффиксом, чтобы удалить его из имени файла, а затем объединить его с новым суффиксом:
for x in feed_predict.*.4.202.0;
sudo mv $x (basename $x .4.202.0).4.17.0
end