История изменений
Исправление YAR, (текущая версия) :
Да с чего бы это было б сильно заметно?
я никогда не говорил, что bash на этой задаче может быть быстрее.
Это не «не сильно заметно». Это не «чуть быстрее». Это разница в 200 раз.
и будет скорее всего медленнее
Чем что? 2 последовательных цикла на bash по 3 минуты будут быстрее, чем 0.7 секунды на mawk + 3 минуты на bash? Ну ок.
Не удивлюсь, что bash тормозит
Дальше можно было не писать:
rain@walkbook:~/to_net$ time (cat list | while IFS=: read name surname; do true ; done)
real 2m33,704s
user 1m52,898s
sys 0m41,033s
rain@walkbook:~/to_net$ time (cat list | while read string; do true ; done)
real 1m20,660s
user 0m40,290s
sys 0m40,668s
rain@walkbook:~/to_net$ time (while read string; do true ; done < list)
real 0m34,068s
user 0m28,237s
sys 0m5,816s
rain@walkbook:~/to_net$ time (while IFS=: read name surname; do true ; done < list)
real 1m46,313s
user 1m39,405s
sys 0m6,876s
Когда же у нас задача разбить входные строки на два поля, то применение awk как правило только доказывает непрофессионализм пишущего
mawk
real 0m0,683s
while read string
real 1m20,660s
while IFS=: read name surname
real 2m33,704s
Ну ок.
// Ушел спать.
Исправление YAR, :
Да с чего бы это было б сильно заметно?
я никогда не говорил, что bash на этой задаче может быть быстрее.
Это не «не сильно заметно». Это не «чуть быстрее». Это разница в 200 раз.
и будет скорее всего медленнее
Чем что? 2 последовательных цикла на bash по 3 минуты будут быстрее, чем 0.7 секунды на mawk + 3 минуты на bash? Ну ок.
Не удивлюсь, что bash тормозит
Дальше можно было не писать:
rain@walkbook:~/to_net$ time (cat list | while IFS=: read name surname; do true ; done)
real 2m33,704s
user 1m52,898s
sys 0m41,033s
rain@walkbook:~/to_net$ time (cat list | while read string; do true ; done)
real 1m20,660s
user 0m40,290s
sys 0m40,668s
rain@walkbook:~/to_net$ time (while read string; do true ; done < list)
real 0m34,068s
user 0m28,237s
sys 0m5,816s
rain@walkbook:~/to_net$ time (while IFS=: read name surname; do true ; done < list)
real 1m46,313s
user 1m39,405s
sys 0m6,876s
Когда же у нас задача разбить входные строки на два поля, то применение awk как правило только доказывает непрофессионализм пишущего
while read string
real 1m20,660s
while IFS=: read name surname
real 2m33,704s
Ну ок.
// Ушел спать.
Исходная версия YAR, :
Да с чего бы это было б сильно заметно?
я никогда не говорил, что bash на этой задаче может быть быстрее.
Это не «не сильно заметно». Это не «чуть быстрее». Это разница в 200 раз.
и будет скорее всего медленнее
Чем что? 2 последовательных цикла на bash по 3 минуты будут быстрее, чем 0.7 секунды на mawk + 3 минуты на bash? Ну ок.
Не удивлюсь, что bash тормозит
Дальше можно было не писать:
rain@walkbook:~/to_net$ time (cat list | while IFS=: read name surname; do true ; done)
real 2m33,704s
user 1m52,898s
sys 0m41,033s
rain@walkbook:~/to_net$ time (cat list | while read string; do true ; done)
real 1m20,660s
user 0m40,290s
sys 0m40,668s
rain@walkbook:~/to_net$ time (while read string; do true ; done < list)
real 0m34,068s
user 0m28,237s
sys 0m5,816s
rain@walkbook:~/to_net$ time (while IFS=: read name surname; do true ; done < list)
real 1m46,313s
user 1m39,405s
sys 0m6,876s
// Ушел спать.