Автор Гілка: Питання щодо grep  (Прочитано 4466 раз)

Відсутній noddeat

  • Кореспондент
  • ***
  • дописів: 197
  • Карма: +0/-0
Re: Питання щодо grep
« Відповідей #15 : 2008-06-14 20:44:01 »
Дякую ще раз усім!

Ось що вийшло (те, що треба):

for a in `find -name "topsecret*.txt" -printf '%T@ %p\n' | sort | sed -e 's/[0-9.]\+ //' `
do
sec="${a##*/topsecret_}";
sec="${sec%.txt}";
topscret=`cat $a | awk '/secret/ {print $6}' | tail -1`; #останній рядок у файлі, де зустрічається слово secret
echo "$sec $topsecret";
done
« Змінено: 2008-06-14 20:45:25 від noddeat »
Filenames are infinite in length, where infinity is set to to 255 characters. Peter Collinson, "The Unix File System"

Відсутній Дмитро Редчук

  • Кореспондент
  • ***
  • дописів: 104
  • Карма: +0/-0
Re: Питання щодо grep
« Відповідей #16 : 2008-06-18 11:53:29 »
Варіант 1.
for a in `find -name "topsecret*.txt"`;
do
cat $a | awk '/secret/ {print $6}' | tail -1
done

По-перше, навіщо тут cat?
cat $a | awk '/secret/ { print $6 }'робить те саме, що і:
awk '/secret/ { print $6 }' $a
По-друге, навіщо тут tail?
awk '/secret/ { print $6 }' $a | tail -1робить те саме, що і:
awk '/secret/ { s = $6 } END { print s; }' $a
«Критика має бути конструктивною. Інакше вона деструктивна» ©
Щось не так? — Зроби так.

Відсутній noddeat

  • Кореспондент
  • ***
  • дописів: 197
  • Карма: +0/-0
Re: Питання щодо grep
« Відповідей #17 : 2008-06-19 22:00:23 »
Цитата
По-перше, навіщо тут cat?
ну я часами навіть cat file | grep text пишу, замість grep text file. Питання звички :)

Цитата
По-друге, навіщо тут tail?

ваш варіант на два символи довший :) Але річ не в тім, мій варіант для мене читабельніший, бо я не знайомий з awk.

Але все одно дякую за пропозиції.
« Змінено: 2008-06-19 22:01:09 від noddeat »
Filenames are infinite in length, where infinity is set to to 255 characters. Peter Collinson, "The Unix File System"

Відсутній Дмитро Редчук

  • Кореспондент
  • ***
  • дописів: 104
  • Карма: +0/-0
Re: Питання щодо grep
« Відповідей #18 : 2008-06-20 16:33:00 »
Але все одно дякую за пропозиції.
:-) Та нема за що.
«Критика має бути конструктивною. Інакше вона деструктивна» ©
Щось не так? — Зроби так.