Регулярное выражение sed ведет себя иначе, чем в vim и perl?

Мне кажется, что вы скупо относитесь к пробелам.

Вам нужен пробел перед {} , а также до и после \; и после cp и 'lab4.bak '. Вам также не нужны одинарные кавычки вокруг {} .

Второй -exec ... , вероятно, должен быть -exec cp {} .bak / IFT383ss16 / Labs / \;

Попробуйте следующее:

find . -maxdepth 1 -type f -size +1k \
    -exec gzip -k -S.bak {} \; \
    -exec cp {}.bak /IFT383ss16/Labs/ \;   

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

Кстати, вы хотите скопировать файлы .bak или переместить их? Возможно, используйте mv вместо cp .

3
27.04.2016, 08:10
0 ответов

Теги

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