Понимание регулярного выражения команды locate

Вы должны сравнить измененный файл с неизмененной версией. Если существуют разные параметры формата вывода различий, создайте унифицированный или контекстный различия. Эти форматы содержат некоторые контекстные строки вокруг измененных строк. Инструмент patchобычно находит строки, которые нужно изменить, даже если номера строк изменились.

Если файл находится в SVN, вы можете использовать две рабочие области и зафиксировать версию клиента в одной рабочей области, а затем обновить рабочую область, содержащую вашу измененную версию. Это должно объединить изменения клиента с вашим файлом, и (после возможного разрешения конфликтов )вы, наконец, сможете зафиксировать свой файл. который теперь должен иметь все модификации.

5
28.01.2021, 17:05
1 ответ

Вы вводите команду в командной строке. Оболочка обрабатывает то, что вы ввели, включая подстановку, замену переменных, замену $()и так далее. После обработки того, что вы набрали, оболочка выполняет команду.

Кавычки нужны, если строка содержит специальные для оболочки символы, такие как пробелы или звездочки, но вы не хотите, чтобы оболочка их обрабатывала. Вы обойдетесь без кавычек звездочки, если в текущем каталоге нет соответствующих файлов, но в любом случае это хорошая практика.

Важно понимать, что опция --regexне влияет на действия оболочки. Первый,оболочка обрабатывает введенную вами команду. locateполучает результат этой обработки.

a )Если в текущем каталоге есть файлы, соответствующие file*, оболочка заменит file*списком этих файлов перед вызовом locate. Если совпадения нет, оболочка не будет касаться file*, а locate будет искать файлы с именами file, filee, fileeeи т. д. Короче говоря, оболочка пытается выполнить подстановку, а затем locateвыполняет поиск по регулярному выражению, если подстановка оболочки приводит к правильному синтаксису.

b )Кавычки говорят оболочке оставить звездочку в покое. locateбудет искать файлы, начинающиеся с file. Нет поиска по регулярным выражениям.

c )Оболочка пытается выполнить подстановку, как в ). Если совпадения нет, locateбудет искать файлы, начинающиеся с file. Нет поиска по регулярным выражениям.

d )Оболочка оставляет выражение в покое. locateбудет выполнять поиск по регулярному выражению и искать файлы с именами file, filee, fileeeи так далее.

5
18.03.2021, 22:33

Теги

Похожие вопросы