newbie question - how to pass textfile as an argument

Viktor Lazlo viktorlazlo at telus.net
Wed Oct 1 13:59:21 PDT 2003



On Wed, 1 Oct 2003, Dan Nelson wrote:

> In the last episode (Oct 01), Martin Vana said:
> > I was just wondering if there is a way how to pass a text file with
> > list of path/files to programs like cp/mv.
>
> If the list is small (less than 65000 characters total):
>
>   cp $(cat myfile) /otherdir/
>
> If the list is large:
>
>   xargs < myfile -J% cp % /otherdir/


You could also run it through a for loop:

	for i in $(cat myfile); do mv $i ~/mydir; done

Or if the files can be grouped by a pattern:

	for i in *.mp3; do mv "$i" ~/mymp3s; done

Or if the files are scattered all over your hard drive and you haven't
created a list yet:

	find / -type f -name "*.mp3" -exec mv {} ~/mymp3s \;

Cheers,

Viktor


More information about the freebsd-questions mailing list