Это была ошибка в версиях GNU Grep
ранее, чем эта фиксация (т.е. ранее, чем GNU
версия 2.5.3
).
Заключение в кавычки соответствующей части журнала изменений:
Previously failing tests relative to left anchors (^ and \<) and -w should now pass.
Начальная фиксация, которая описала ошибку также, добавила тест для нее:
# End of a previous match should not match a "start of ..." expression.
grep_test "word_word/" "word_/" "^word_*" -o
Во-первых, выгоните новый каталог с квартиры (с временным именем, чтобы избежать конфликта), затем удалить исходный каталог, затем переименовать новый каталог в место.Примечание: потому что это включит вещи удаления в массе, продумать его тщательно прежде просто выполнить эти команды и удостовериться, что у Вас есть резервное копирование сначала. Кроме того, я записал это с &&
s между командами, поэтому если Вы перестали работать, остальные не будут работать - хороший в сценарии, но если Вы делаете это вручную, вероятно, лучше просто ввести их последовательно, обратить внимание и остановку, если что-нибудь идет не так, как надо.
mv <path>/mydir/mydir <path>/mydir-temp &&
rm -R <path>/mydir &&
mv <path>/mydir-temp <path>/mydir
Лучший способ сделать это:
for d in `ls -A`; do if [ "$d" != "TTT" ]; then cp -Rf $d TTT; fi; done
копии все каталоги из текущего каталога рекурсивно в каталоге TTT кроме самого TTT. Опция -A
в ls
позволяет Вам рассматривать все скрытые каталоги и файлы, но не рассматривают специальные файлы. и.. и условие "$d" != "TTT"
исключите каталог TTT так для предотвращения себя копия. Можно записать bash
сценарий с 2 аргументами сохраняет к локальному или системному мусорному ведру и использует его при необходимости.
ls
. См. mywiki.wooledge.org/ParsingLs.
– Chris Down
09.11.2012, 13:23
ls
в моей системе в течение долгого времени теперь, без любых проблем. Но затем я знаю для того, что ни один из моих файлов не содержит вредных символов. В случае новой или неизвестной системы, да, НИКОГДА не анализируют вывод ls.
– darnir
09.11.2012, 17:35
for d in *
), и более интуитивный, просто кажется действительно странным сделать независимо от того, хорошо работает ли это обычно.
– Chris Down
09.11.2012, 17:39
rm
команда неправильно; я отредактировал ответ для исправления его. А-ч – Gordon Davisson 15.12.2010, 21:49<path>/mydir
это не находится в<path>/mydir/mydir
был бы потерян. Я иногда предполагаю, что это полезно, но не в этом случае. – Peter Boughton 15.12.2010, 21:59mv
команда может сделать это... – Gordon Davisson 15.12.2010, 22:21