Подтвердить что ты не робот

Как просмотреть файлы в каталоге с помощью bash?

Как скопировать только обычные файлы в каталог (игнорируя подкаталоги и ссылки) в один и тот же пункт назначения? (bash в Linux) Очень большое количество файлов

4b9b3361

Ответ 1

for file in /source/directory/*
do
    if [[ -f $file ]]; then
        #copy stuff ....
    fi
done

Ответ 2

Перечислить обычные файлы в /my/sourcedir/, не смотря рекурсивно в поддиректорах:

find /my/sourcedir/ -type f -maxdepth 1

Чтобы скопировать эти файлы в /my/destination/:

find /my/sourcedir/ -type f -maxdepth 1 -exec cp {} /my/destination/ \;

Ответ 3

Чтобы расширить ответ poplitea, вам не нужно выполнять cp для каждого файла: используйте xargs для копирования нескольких файлов за раз:

find /my/sourcedir -maxdepth 1 -type f -print0 | xargs -0 cp -t /my/destination

или

find /my/sourcedir -maxdepth 1 -type f -exec cp -t /my/destination '{}' +