копировать файлы в другой каталог, кроме расширения файла .txt

У меня есть много файлов с разными расширениями, поэтому я хочу скопировать все, кроме

".текст"

в другой каталог.

Я попробовал команду ниже, чтобы найти все возможные файлы с разными расширениями файлов, кроме «.txt».

ls -lrt /home/updatet/test/ -I "*.txt"

и копировать

ls -1 /home/updatet/test/ | xargs cp {} demo/

person ravi    schedule 01.08.2017    source источник
comment
Какая оболочка? Это действительно должно поддерживать sh, или вы можете использовать расширения, добавленные в bash или ksh?   -  person Charles Duffy    schedule 01.08.2017
comment
Кстати, см. почему не следует анализировать вывод ls.   -  person Charles Duffy    schedule 01.08.2017


Ответы (2)



person    schedule
comment
-exec ... {} + требует, чтобы {} было непосредственно перед +. Здесь вам нужно менее эффективное использование \;, если только вы не собираетесь полагаться на GNU cp, используя -exec cp -t demo/ -- {} + - person Charles Duffy; 01.08.2017
comment
Верно. s/+/\;/ Отредактирует ответ. Спасибо @CharlesDuffy - person Bjorn A.; 01.08.2017