URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 61084
[ Назад ]

Исходное сообщение
"BASH SH csh"

Отправлено zvdaniel , 19-Окт-05 22:42 
как находясь в каком то каталоге склеить все текстовые файлы?
через коммандную строку
так он мне только названия туда пишет:
find *.txt | cat >> result.txt
а как правильно это написать?

Содержание

Сообщения в этом обсуждении
"BASH SH csh"
Отправлено miron , 19-Окт-05 23:06 
например так:

find ./ -type f | -exec cat > /otherdir/qqq.txt {} \;


"BASH SH csh"
Отправлено miron , 19-Окт-05 23:08 

вместо ">" ставить ">>"



"BASH SH csh"
Отправлено NoName , 20-Окт-05 06:27 
Какой нахрен find!!?
просто cat *.txt >result.file

MyHomePage - http://surgutneet.ru


"BASH SH csh"
Отправлено miron , 21-Окт-05 01:27 

мудрое решение :)
анекдот про муху все знают?

"BASH SH csh"
Отправлено allez , 21-Окт-05 06:34 
>
>мудрое решение :)
>анекдот про муху все знают?


Не все. Просветите, пожалуйста :-).

Для NoName: ваш способ хорош в том случае, если все нужные файлы лежат в
текущем каталоге; если же они разбросаны по подкаталогам, то без find не
обойтись. Кстати, неплохо было бы узнать от автора темы, какая ситуация
имеет место быть у него.


"BASH SH csh"
Отправлено anonim , 21-Окт-05 09:37 
>Какой нахрен find!!?
>просто cat *.txt >result.file
>
>MyHomePage - http://surgutneet.ru

ок это конечно здорово, но тогда возникает один вопрос, а как убрать из result.file дублирующиеся строки ?


"BASH SH csh"
Отправлено newser , 21-Окт-05 09:46 
>>Какой нахрен find!!?
>>просто cat *.txt >result.file
>>
>>MyHomePage - http://surgutneet.ru
>
>ок это конечно здорово, но тогда возникает один вопрос, а как убрать
>из result.file дублирующиеся строки ?

sort и uniq в помощь. Если же сортировка не нужна, то в общем случае - никак.


"BASH SH csh"
Отправлено allez , 21-Окт-05 14:08 
>sort и uniq в помощь. Если же сортировка не нужна, то в
>общем случае - никак.

Ну почему же никак? Остается еще метод решения "в лоб", он же метод грубой
силы (при которой ума не надо :-)). Берем первую строчку файла-результата
и сравниваем ее с остальными, находим одинаковые - удаляем. Дошли до конца
файла - берем следующую строчку и так до предпоследней. Но я думаю, что до
такого ужаса дело не дойдет и sort -u будет приемлемым вариантом.


"BASH SH csh"
Отправлено anonim , 21-Окт-05 14:17 
>>sort и uniq в помощь. Если же сортировка не нужна, то в
>>общем случае - никак.
>
>Ну почему же никак? Остается еще метод решения "в лоб", он же
>метод грубой
>силы (при которой ума не надо :-)). Берем первую строчку файла-результата
>и сравниваем ее с остальными, находим одинаковые - удаляем. Дошли до конца
>
>файла - берем следующую строчку и так до предпоследней. Но я думаю,
>что до
>такого ужаса дело не дойдет и sort -u будет приемлемым вариантом.

всем спасибо разобрался всё максимально просто получилось
cat file1 file2 |sort |uniq >result.file


"BASH SH csh"
Отправлено zvdaniel , 21-Окт-05 21:13 
>всем спасибо разобрался всё максимально просто получилось
>cat file1 file2 |sort |uniq >result.file

ВСЕМ ОГРОМНОЕ СПАСИБО, узнал много нового!!!