Comments 94
Столько еще неизвестного и полезного ожидает тебя, друг!
Весьма удобно. Будем пользоваться.
Спасибо вам.
/*пошел переписывать скрипты
/*пошел переписывать скрипты
Отличное начало =) Поздравляю!
Классная вещь. Хочу такое же в PowerShell, и Write-Progress даже не предлагайте. Пошел помотреть, как бы такую штуку сделать.
Вот как Linux помогает развиваться Windows… :)
Вот как Linux помогает развиваться Windows… :)
Я бы хотел узнать у уважаемого сообщества — а за что минусы? Не хочу никого обидеть, но что за снобизм (простите — хотя и знаю, что не простите, а заминусуете еще больше)? Что, Linux становится некошерным, если в посте про POSIX программу упоминается (в положительном смысле) Windows? или это плохо, если в PowerShell будет утилита похожая на pv?
В любом случае — даже если ответ на все вопросы «да», хотелось бы услышать об этом, вместо молчаливых минусов. Ну так, чтобы знать в будущем, о чем не стоит говорить (даже если думаешь).
Спасибо.
В любом случае — даже если ответ на все вопросы «да», хотелось бы услышать об этом, вместо молчаливых минусов. Ну так, чтобы знать в будущем, о чем не стоит говорить (даже если думаешь).
Спасибо.
я тоже хочу такую-же штуку в PowerShell. а минусуют вас вероятно те, кто только-что узнал об этой утилите, установил, и желает чтобы вы им завидовали :)
В том-то все и дело! Поставил минус, значит не согласен — ну так объясни. Понятно, что минуснуть легко, а объяснить труднее. Но, если уж принял на себя груз (или это удовольствие?) минуснуть — так объясни, почему (говоря более формальным языком, я бы сказал что в голосовании «плюсануть» и «минусонуть» несимметричны — в случае согласия не нужно выражать свое мнение, так как оно выражено заранее. При несогласии, как минимум, слегка отличное мнение присутствует, и поделиться им не помешало бы).
В конце-концов, мы все тут уж точно не с целью испортить друг другу настоение.
Или я ошибаюсь?
В конце концов, плюньте вы на мой комментарий! Просто задумайтесь — минусуете молчаливо (возможно, портите желание вообще в будущем участвовать в жизни Хабра). Ну так возьмите за труд объяснить! Это просто — нужно только нажать 10-20 клавиш :)
В конце-концов, мы все тут уж точно не с целью испортить друг другу настоение.
Или я ошибаюсь?
В конце концов, плюньте вы на мой комментарий! Просто задумайтесь — минусуете молчаливо (возможно, портите желание вообще в будущем участвовать в жизни Хабра). Ну так возьмите за труд объяснить! Это просто — нужно только нажать 10-20 клавиш :)
>> чтобы знать в будущем, о чем не стоит говорить (даже если думаешь)
О том что думаешь, говорить нужно, невзирая на обстоятельства. И это я не только про хабр.
О том что думаешь, говорить нужно, невзирая на обстоятельства. И это я не только про хабр.
Спасибо, хорошая утилита!
ваш пример гениален:)
pv /dev/zero > /dev/null
10GB 0:00:03 [3,11GB/s] [ <=> ]
10GB 0:00:03 [3,11GB/s] [ <=> ]
pv /dev/zero > /dev/null
15GB 0:00:15 [7,69GB/s] [ <=> ]
:)
15GB 0:00:15 [7,69GB/s] [ <=> ]
:)
pv /dev/zero > /dev/null
3GB 0:00:06 [8,74GB/s] [ <=> ]
Альфа 3 убунты 9.10. Скорость работы дисковой подсистемы возросла?
3GB 0:00:06 [8,74GB/s] [ <=> ]
Альфа 3 убунты 9.10. Скорость работы дисковой подсистемы возросла?
При чем здесь работа дисковой подсистемы?! /dev/zero и /dev/null никак не связаны с дисковой системой (ну только тем, что их можно использовать как настоящие файлы :)).
В этом тесте скорость зависит от процессора, частоты шины и частоты работы памяти. Этот показатель показывает с какой скоростью ядро может генерировать нули и уничтожать их в памяти.
У меня был тест на Linux Mint 7.0 (основан на Ubuntu 9.04).
На моем десктопе — Core 2 Duo E8200 (2.66ГГц), разогнанный до 3.4ГГц + DDR2 2048 Mb PC-8500 (1066MHz) Corsair (2x1024). Результат: 7.7GB/s
На моем домашнем сервере Celeron Dual-Core (1.66ГГц) + DDR2 2048 Mb PC-6400 (800Mhz) Samsung. Результат: 5,03GB/s
В этом тесте скорость зависит от процессора, частоты шины и частоты работы памяти. Этот показатель показывает с какой скоростью ядро может генерировать нули и уничтожать их в памяти.
У меня был тест на Linux Mint 7.0 (основан на Ubuntu 9.04).
На моем десктопе — Core 2 Duo E8200 (2.66ГГц), разогнанный до 3.4ГГц + DDR2 2048 Mb PC-8500 (1066MHz) Corsair (2x1024). Результат: 7.7GB/s
На моем домашнем сервере Celeron Dual-Core (1.66ГГц) + DDR2 2048 Mb PC-6400 (800Mhz) Samsung. Результат: 5,03GB/s
AX2 4000+, 2x1024Мб Hynix DDR2-800 — 7.03GB/s
так что все относительно
Разогнанный C2D E8200 явно мощнее стокового AX2 4000+, да и память… Однако разница всего в 700Мб/сек
так что все относительно
Разогнанный C2D E8200 явно мощнее стокового AX2 4000+, да и память… Однако разница всего в 700Мб/сек
Извините, я ошибся. Я думал, что у меня разогнанный процессор и память на всю работает… Я совсем забыл, что с такой жарищей наоборот понизил все. На 7.7Гб/сек у меня стоял процессор на 2.33ГГц и память работала на 800Мгц.
Для нового теста я поднял частоту процессора до 3.55ГГц и память — 1066МГц. В результате получилось 10.2Гб/сек.
Еще раз, извиняюсь. Но C2D явно мощнее AX2… Эх, было время я тоже AMD любил…
Для нового теста я поднял частоту процессора до 3.55ГГц и память — 1066МГц. В результате получилось 10.2Гб/сек.
Еще раз, извиняюсь. Но C2D явно мощнее AX2… Эх, было время я тоже AMD любил…
Да, точно не причем.
А насчет ускорения в 9.10 все таки похоже что так и есть.
У меня 8.7GB/s выдает на Core2Duo 4600 разогнаного до 3ГГц + DD2 2048 1066 Mhz.
А насчет ускорения в 9.10 все таки похоже что так и есть.
У меня 8.7GB/s выдает на Core2Duo 4600 разогнаного до 3ГГц + DD2 2048 1066 Mhz.
[web@server1 ~]$ pv /dev/zero > /dev/null
82.1GB 0:00:09 [9.15GB/s] [ <=> ]
:)
82.1GB 0:00:09 [9.15GB/s] [ <=> ]
:)
передаю привет из будущего, с офисного компа.
$ pv /dev/zero > /dev/null
878GiB 0:00:53 [16,6GiB/s] [ <=> ]
$ pv /dev/zero > /dev/null
878GiB 0:00:53 [16,6GiB/s] [ <=> ]
Ага, спустя 6 лет: Core I5 2500K 17,8 GiB/s. До Мура не дотягивает, всего в два раза возросло! Хотя скорее всего дело в памяти — она вроде не так сильно ускорялась, как процессоры. +Судя по htop'у загружается только одно ядро.
А из urandom'а 21 MiB/s — тут разница с 2009 годом заметнее.
А из urandom'а 21 MiB/s — тут разница с 2009 годом заметнее.
И Вам привет из будущего. 5950x, B550, DDR2400
pv /dev/zero > /dev/null
462GiB 0:00:22 [21,3GiB/s] [ <=> ]
pv /dev/urandom > /dev/null
9,69GiB 0:00:20 [ 497MiB/s] [ <=> ]
Ещё есть зависимость от того, каков размер блоков при копировании:
$ pv /dev/zero > /dev/null
42,1GB 0:00:06 [7,05GB/s] [ <=> ]
$ dd if=/dev/zero of=/dev/null bs=1M count=40K
40960+0 записей считано
40960+0 записей написано
скопировано 42949672960 байт (43 GB), 4,22341 c, 10,2 GB/c
$ # Ну или с перенаправлением (какая разница :)
$ dd if=/dev/zero bs=1M count=40K > /dev/null
40960+0 записей считано
40960+0 записей написано
скопировано 42949672960 байт (43 GB), 4,2467 c, 10,1 GB/c
фаллометрия детектед ;)))
pv /dev/zero > /dev/null
7GiB 0:00:08 [13,4GiB/s] [ <=> ]
7GiB 0:00:08 [13,4GiB/s] [ <=> ]
pv /dev/zero > /dev/null
67GB 0:00:19 [14,1GB/s]
pv /dev/urandom > /dev/null
80MB 0:01:10 [5,32MB/s]
Q6600 :)
67GB 0:00:19 [14,1GB/s]
pv /dev/urandom > /dev/null
80MB 0:01:10 [5,32MB/s]
Q6600 :)
У народа появился еще один прекрасный метод показать крутизну своей тачки.
спасибо,
добавил в фавориты
добавил в фавориты
хорошая штука, узнал о ней три дня назад, собственно тогда, когда и хотел пригласить вас на сайт, только все инвайты уже раздал.
пост скриптум, извините, накипело:
зацените какое у нас классное сообщество, зашел в профиль автору, там написано следующее:
карма +16, голосов 18, стало быть кто-то проголосовал в минус.
Внимание вопрос, уважаемые знатоки, какой мудак это сделал и что им двигало, если у человека один пост(кстати, уникальный на хабре) и всё! ни комментариев, ничего… от от не#уй делать что-ли…
зацените какое у нас классное сообщество, зашел в профиль автору, там написано следующее:
карма +16, голосов 18, стало быть кто-то проголосовал в минус.
Внимание вопрос, уважаемые знатоки, какой мудак это сделал и что им двигало, если у человека один пост(кстати, уникальный на хабре) и всё! ни комментариев, ничего… от от не#уй делать что-ли…
Возможна ситуация когда 1 голос != 1… ну вот както так.
Я когда-то плюсовал когото и увидел что за мой 1 голос добавилось 0.59 кармы
Я когда-то плюсовал когото и увидел что за мой 1 голос добавилось 0.59 кармы
Вы меня только что огорчили :) у меня после моего первого топика было около 17 голосов. Карма 7.75 если не ошибаюсь… Вот теперь думаю, чтобы это могло значить…
нет, не первый, я просто не пишу ничего именно по этой причине, впринципе кармы было так много, что я не дрочил на нее не переживал, потом три поста с выходом на главную, и она уже не 77, а 50, закрыл нафиг свои посты и остался читателем, вот здесь идет в точности к тому же, хотел обратить внимание. 30 комментов — молодец, спасибо, как не хватало… среднее арифметическое говорит, что кто-то зассал сказать как есть, именно с этой тз хабр де факто учит быть крысой.
Да забейте вы на эту карму
да причем здесь карма? я же не о самих цифрах, как и писал выше — мне ее вполне хватает, чтобы голосовать, использовать html в комментариях и прочее, то есть она есть — и точка. Я говорю о поведении людей, карма в данном случае лишь как лакмусовая бумажка — по этой самой цифре можно посчитать процент п##расов
(давайте орлы, еще мне пару минусов в профиль, я это замечаю, но вы как и прежде — остались теми же жалкими тихими минусятниками)
ps: последнее — не вам, sunburd, вам я сейчас повышу (и так 3.50 на данный момент, посмотрим как поведут себя крысы — я думаю назло мне они вас поднимут :) )
И кто отминусовал выше — мне до задницы ваши мнения, я просто обращаю внимание, что мне есть что написать в постах, которые вы сами же выведете на главную, откомментите «классный метод в верстке», «клева, как я сам не додумался», но карма упадёт(проверено неединоразово), и что это значит? Что поэт сочинил стих, а его послали на йух… вот и вся арифметика, поймите правильно какие в этот момент чувства, ты вынашивал идею скажем месяц, до чего-то додумался, что-то реализовал, поделилися, а тебе за это насрали под дверью — здорово, не правда ли?
(давайте орлы, еще мне пару минусов в профиль, я это замечаю, но вы как и прежде — остались теми же жалкими тихими минусятниками)
ps: последнее — не вам, sunburd, вам я сейчас повышу (и так 3.50 на данный момент, посмотрим как поведут себя крысы — я думаю назло мне они вас поднимут :) )
И кто отминусовал выше — мне до задницы ваши мнения, я просто обращаю внимание, что мне есть что написать в постах, которые вы сами же выведете на главную, откомментите «классный метод в верстке», «клева, как я сам не додумался», но карма упадёт(проверено неединоразово), и что это значит? Что поэт сочинил стих, а его послали на йух… вот и вся арифметика, поймите правильно какие в этот момент чувства, ты вынашивал идею скажем месяц, до чего-то додумался, что-то реализовал, поделилися, а тебе за это насрали под дверью — здорово, не правда ли?
Ну любят товарищи подрочить карму :) В мою посмотрите — за 1 пост она выглядит как ноль :) Зато сколько народу сочло нужным поставить плюс или минус :) Я уже давно забил на неё — можно писать нормальные посты и уходить в минуса, можно крикнуть — «вы все быдло идитенайух» и взлететь в плюсах. Раз на раз не приходится :)
Вдруг кто-то промахнулся. У меня иногда тачпад тупит, и во время открытия хабраката спускает страничку на пару строк, после чего клац приходится на «-», что приводит к неоправдвнно опущенному мною топику. Очень обидно, но сделанного не воротишь.
полезная, но нетривиальная тулза )
как мне этого не хватало! спасибо!
Супер! Спасибо!
«Уже неплохо, но хочеться хочется большего»
жесть, я всегда ругался, что в unix и unix like os не хватает прогресс бара. теперь жить стало легче
Обычно сначала запускаешь cp, а потом минут через 5 понимаешь, что хотелось бы прогресс поглядеть.
Вот крутится в голове такая идейка… а нельзя ли работающему cp/mv залезть в /proc/PID, посмотреть на открытые файловые дескрипторы и на основании положения звёзд и планет угадать, в каком месте сейчас читается какой файл, посмотреть размер файла и выдать эту информацию на экран?
Вот крутится в голове такая идейка… а нельзя ли работающему cp/mv залезть в /proc/PID, посмотреть на открытые файловые дескрипторы и на основании положения звёзд и планет угадать, в каком месте сейчас читается какой файл, посмотреть размер файла и выдать эту информацию на экран?
Если Вы вызывали cp * blah
то весь перечень файлов у него расширится шеллом в список аргументов, который видны в /proc
и cp вроде как идет по-порядку. Проблем особых нет, пока не приходится копировать рекурсивно директории.
то весь перечень файлов у него расширится шеллом в список аргументов, который видны в /proc
и cp вроде как идет по-порядку. Проблем особых нет, пока не приходится копировать рекурсивно директории.
Во FreeBSD для этого есть Ctrl+T (SIGINFO):
Во время копирования файла я два раза нажал Ctrl+T. Видно, что во время первого нажатия скопировалось 17% файла, во время второго — 41%.
% cp tetex-texmf-3.0.tar.gz /tmp/tetex-texmf-3.0.tar.gz
load: 0.04 cmd: cp 92881 [getblk] 0.00u 0.06s 0% 736k
tetex-texmf-3.0.tar.gz -> /tmp/tetex-texmf-3.0.tar.gz 17%
load: 0.04 cmd: cp 92881 [getblk] 0.00u 0.15s 0% 760k
tetex-texmf-3.0.tar.gz -> /tmp/tetex-texmf-3.0.tar.gz 41%
^C
Во время копирования файла я два раза нажал Ctrl+T. Видно, что во время первого нажатия скопировалось 17% файла, во время второго — 41%.
А есть ли тулза что бы смотреть состояние уже работующих пайпов?
Да забавно) поююзаем.
некайф если du занимает столько же времени сколько tar
Сайт проекта pv
Так, на всякий случай, не у всех в репах есть pv.
Так, на всякий случай, не у всех в репах есть pv.
Да, pv — это must have :)
Есть еще такое приспособление для похожих нужд: www.theiling.de/projects/bar.html
Написано на sh.
Есть еще такое приспособление для похожих нужд: www.theiling.de/projects/bar.html
Написано на sh.
Класс!!! Спасибо :)
[sasha@acserv /usr/ports 0] 510> pv < /dev/zero > /dev/null ^C.3GB 0:00:07 [6.61GB/s] [ <=> ]
еще в мане написан такой пример
(pv /dev/zero -n > /dev/null) 2>&1 | dialog --gauge Progress 7 50
(pv /dev/zero -n > /dev/null) 2>&1 | dialog --gauge Progress 7 50
нда, пару раз даже сам изобретал колесо оказывается…
вот она, радость простых вещей :)
но почему называется pipeviewer (pv), а не какой-нибудь pipeprogress (pp)?
но почему называется pipeviewer (pv), а не какой-нибудь pipeprogress (pp)?
а нельзя это как то с «cp» и «mv» использовать, чтобы видеть прогресс копирования/перемещения, так, как это у «scp» сделано?
или у «cp» и «mv» есть какая нибудь опция своя?
или у «cp» и «mv» есть какая нибудь опция своя?
Ну как вариант «навскидку», — прописать в .bashrc:
Ну и результат:
Назвать можете как угодно (pvcp, vcp или даже заменить стандартный cp =)
P.S. Возможны проблемы с аргументами, хотя у меня всё отлично работает =)
pvcp() { command /bin/cp $@ | pv ; } pvmv() { command /bin/mv $@ | pv ; }
Ну и результат:
fish@bone:~$ pvcp /dev/zero /dev/null 0B 0:00:03 [ 0B/s ] [<=> ] fish@bone:~$
Назвать можете как угодно (pvcp, vcp или даже заменить стандартный cp =)
P.S. Возможны проблемы с аргументами, хотя у меня всё отлично работает =)
$ pv /path/to/file/name | cat — >/output/path/file
полезная штуковина — если в скриптах. а так — если логи не большие + если операцию так и так надо сделать и не важно сколько времени она займет (на диске есть место и комп включен круглосуточно) то вроде и не надо — запустил и в другую консоль работать…
pv /dev/zero > /dev/null
2GB 0:00:20 [3,25GB/s] [ <=> ]
pv /dev/urandom > /dev/null
1MB 0:00:11 [3,93MB/s] [ <=> ]
У FreeBSD, похоже, генератор случайных чисел бодрее: даже на древних машинах pv /dev/urandom > /dev/null даёт не три, а целых тридцать MB/s!
2GB 0:00:20 [3,25GB/s] [ <=> ]
pv /dev/urandom > /dev/null
1MB 0:00:11 [3,93MB/s] [ <=> ]
У FreeBSD, похоже, генератор случайных чисел бодрее: даже на древних машинах pv /dev/urandom > /dev/null даёт не три, а целых тридцать MB/s!
а есть похожая тулза для CP?
cp file1 file2?
а то бывает копируешь 20Гб файл… и думаешь… а сколько еще осталось :)
cp file1 file2?
а то бывает копируешь 20Гб файл… и думаешь… а сколько еще осталось :)
а для mysql, когда из дампа востанавливаешь, можно ее добавить:
mysql -p database < dump.sql?
mysql -p database < dump.sql?
emerge -pv pv
Столкнулся с подобной проблемой и наткнулся на этот пост.
Автор, дай бог тебе здоровья, а!
Автор, дай бог тебе здоровья, а!
Sign up to leave a comment.
pv — маленькая, но очень полезная утилита