devel@ where you _can_ ask
 help / color / mirror / Atom feed
* [newbies]  передача параметров в awk ... или как по другому
@ 2010-03-06 18:33 Vladimir A. Svyatoshenko
                     ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Vladimir A. Svyatoshenko @ 2010-03-06 18:33 UTC (permalink / raw)
  To: devel-newbies

Доброго времени дня,

Стоит несложная задача:
Есть свалка файлов и есть books.csv файл в котором один столбец md5
хеши файлов, а второй - путь и имя куда его положить.
Необходимо раскидать файлы, которые есть в books.csv, по
заданным местам с заданными именами.

Начал писать скрипт. Просто раскидать получилось быстро, а вот с
проверкой по books.csv ну никак не получается. Переменная tmp ну никак
не передается ... или передается, но что то не то :(

#!/bin/bash

for f in *
do
   tmp=`md5sum "$f" | awk '{print $1}'`
   awk '{if($1 != $tmp) print $2}' ~/bookы.csv
#  mv "$f" /mnt/hash/`md5sum "$f" | awk '{print $1}'`
done

В чем я ошибаюсь?


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [newbies] Fwd:  передача параметров в awk ... или как по другому
  @ 2010-03-06 18:40   ` Slava Semushin
  2010-03-06 19:50     ` Vladimir A. Svyatoshenko
  0 siblings, 1 reply; 5+ messages in thread
From: Slava Semushin @ 2010-03-06 18:40 UTC (permalink / raw)
  To: devel@ where you _can_ ask

7 марта 2010 г. 0:33 пользователь Vladimir A. Svyatoshenko
<svyt22@gmail.com> написал:
[...]
> #!/bin/bash

Достаточно просто /bin/sh, в вашем случае.

> for f in *
> do
>   tmp=`md5sum "$f" | awk '{print $1}'`
>   awk '{if($1 != $tmp) print $2}' ~/bookы.csv

awk -v tmp="$tmp" '{if($1 != tmp) print $2}' ~/bookы.csv

> done


-- 
Slava Semushin

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [newbies] передача параметров в awk ... или как по другому
  2010-03-06 18:33 [newbies] передача параметров в awk ... или как по другому Vladimir A. Svyatoshenko
  @ 2010-03-06 18:41 ` Andrey Rahmatullin
  2010-03-06 19:34 ` Afanasov Dmitry
  2 siblings, 0 replies; 5+ messages in thread
From: Andrey Rahmatullin @ 2010-03-06 18:41 UTC (permalink / raw)
  To: devel-newbies

[-- Attachment #1: Type: text/plain, Size: 559 bytes --]

On Sat, Mar 06, 2010 at 08:33:33PM +0200, Vladimir A. Svyatoshenko wrote:
> Стоит несложная задача:
В community@ с этим, пожалуйста.

-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(6):

<hiddenman> ya-legion: да это понятно. просто когда тебе дают четко
            детерминированный выбор "ДА/НЕТ", сложно ошибиться. а когда логику
            работы ты пишешь сам каждый раз, ошибиться легко. один символ и
            всё, конец
<dottedmag> "начинается ли опция, которую вы хотите изменить, с буквы 'а'.
            Да/Нет?"

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [newbies] передача параметров в awk ... или как по другому
  2010-03-06 18:33 [newbies] передача параметров в awk ... или как по другому Vladimir A. Svyatoshenko
    2010-03-06 18:41 ` [newbies] " Andrey Rahmatullin
@ 2010-03-06 19:34 ` Afanasov Dmitry
  2 siblings, 0 replies; 5+ messages in thread
From: Afanasov Dmitry @ 2010-03-06 19:34 UTC (permalink / raw)
  To: devel-newbies

[-- Attachment #1: Type: text/plain, Size: 531 bytes --]

On Sat, Mar 06, 2010 at 08:33:33PM +0200, Vladimir A. Svyatoshenko wrote:
> for f in *
> do
>    tmp=`md5sum "$f" | awk '{print $1}'`
>    awk '{if($1 != $tmp) print $2}' ~/bookы.csv
> #  mv "$f" /mnt/hash/`md5sum "$f" | awk '{print $1}'`
> done
я б попробовал так:
find -type f -exec md5sum "{}" + | cut -d' ' -f1 | while read tmp; do awk -v tmp=tmp '{if($1 != tmp) print $2}' ~/books.csv

хотя что это за проверка: awk '{if($1 != $tmp) print $2}' ~/bookы.csv - мне
не понятно :)
-- 
 С уважением
 Афанасов Дмитрий

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [newbies] Fwd: передача параметров в awk ... или как по другому
  2010-03-06 18:40   ` [newbies] Fwd: " Slava Semushin
@ 2010-03-06 19:50     ` Vladimir A. Svyatoshenko
  0 siblings, 0 replies; 5+ messages in thread
From: Vladimir A. Svyatoshenko @ 2010-03-06 19:50 UTC (permalink / raw)
  To: devel-newbies

On Sun, 7 Mar 2010 00:40:45 +0600
Slava Semushin wrote:

> 7 марта 2010 г. 0:33 пользователь Vladimir A. Svyatoshenko
> <svyt22@gmail.com> написал:
> [...]
> > #!/bin/bash
> 
> Достаточно просто /bin/sh, в вашем случае.
> 
> > for f in *
> > do
> >   tmp=`md5sum "$f" | awk '{print $1}'`
> >   awk '{if($1 != $tmp) print $2}' ~/bookы.csv
> 
> awk -v tmp="$tmp" '{if($1 != tmp) print $2}' ~/bookы.csv
> 
> > done
> 
> 
спасибо


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-03-06 19:50 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-03-06 18:33 [newbies] передача параметров в awk ... или как по другому Vladimir A. Svyatoshenko
2010-03-06 18:40   ` [newbies] Fwd: " Slava Semushin
2010-03-06 19:50     ` Vladimir A. Svyatoshenko
2010-03-06 18:41 ` [newbies] " Andrey Rahmatullin
2010-03-06 19:34 ` Afanasov Dmitry

devel@ where you _can_ ask

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel-newbies/0 devel-newbies/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel-newbies devel-newbies/ http://lore.altlinux.org/devel-newbies \
		devel-newbies@lists.altlinux.org devel-newbies@lists.altlinux.ru devel-newbies@lists.altlinux.com
	public-inbox-index devel-newbies

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel-newbies


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git