Хотя она и называется программой удаленного копирования файлов, я думаю, что она предназначена для выполнения задач локального копирования наряду с удаленными потребностями. Это поведение было отражено в моей среде при тестировании.
Также стоит отметить, что при получении значения из переменной окружения $? после локального запуска наблюдался код возврата 0. Это указывает на то, что он вел себя так, как ожидалось, и не выдавал код ошибки.
К сожалению, я не уверен, что существует способ обойти это поведение по умолчанию. Использование другого инструмента может быть единственным вариантом.
Во-первых, я должен отметить, что ваши команды были вставлены в текстовый процессор. Обратите внимание, что кавычки в вашей команде являются «фигурными кавычками» и недействительны.
В остальном команды почти эквивалентны.
grep "^[^a-z]" foo
[^a-z]
является регулярным выражением для «Соответствия одному символу , отсутствующему в списке». Таким образом, эта команда будет соответствовать любой строке в файле foo
, которая не начинается со строчной буквы.
grep -v "^[a-z]" foo
[a-z]
является регулярным выражением для «Сопоставление одного символа , присутствующего в списке», но параметр -v
означает «инвертировать -совпадение» (Выбранные строки не соответствуют ни одному из указанные узоры. ). Следовательно, это найдет любую строку в файле foo
, которая не начинается со строчной буквы. Разница Эта команда также будет соответствовать пустым строкам.