LINUX.ORG.RU

История изменений

Исправление annerleen, (текущая версия) :

The results are very impressive:

лол, это всё сказки для лохов.
там чувак на полном серьёзе сравнивает скорость «fish -c 'exit 0'» и «zsh -c 'exit 0'».

как только дело доходит до худо-бедно реального скриптинга, fish показывает себя гораздо хуже того же zsh:

~ ➤  ls IMG*                                                                                                                                                                                                                                                              
IMG_20210924_1551085.jpg  IMG_20210925_1513060.jpg  IMG_20210928_2025289.jpg  IMG_20220122_1943576.jpg  IMG_8693.MOV

~ ➤  time bash -c "for i in \$(seq 1 1000); do files=\"IMG*\"; echo \$files; done" | wc -l                                                                                                                                                                                
1000
bash -c "for i in \$(seq 1 1000); do files=\"IMG*\"; echo \$files; done"  0.02s user 0.04s system 99% cpu 0.061 total

~ ➤  time zsh -c "for i in {1..1000}; do files=(IMG*); echo \$files; done" | wc -l                                                                                                                                                                                        
1000
zsh -c "for i in {1..1000}; do files=(IMG*); echo \$files; done"  0.02s user 0.05s system 98% cpu 0.067 total

~ ➤  time fish -c "for x in (seq 1000); echo \$i; set files IMG_*; echo -n \$files; end" | wc -l                                                                                                                                                                          
1000
fish -c "for x in (seq 1000); echo \$i; set files IMG*; echo -n \$files; end  0.10s user 0.04s system 100% cpu 0.144 total


это прям максимально стандартный набор задачек для шелла — циклы, переменные, globbing.

fish слил в два с лишним раза zsh'у и в два с половиной раза bash'у.

единственное, что тормозит в zsh — это oh-my-zsh, но это какбэ не обязательный его компонент.

Исправление annerleen, :

The results are very impressive:

лол, это всё сказки для лохов.

как только дело доходит до худо-бедно реального скриптинга, fish показывает себя гораздо хуже того же zsh:

~ ➤  ls IMG*                                                                                                                                                                                                                                                              
IMG_20210924_1551085.jpg  IMG_20210925_1513060.jpg  IMG_20210928_2025289.jpg  IMG_20220122_1943576.jpg  IMG_8693.MOV

~ ➤  time bash -c "for i in \$(seq 1 1000); do files=\"IMG*\"; echo \$files; done" | wc -l                                                                                                                                                                                
1000
bash -c "for i in \$(seq 1 1000); do files=\"IMG*\"; echo \$files; done"  0.02s user 0.04s system 99% cpu 0.061 total

~ ➤  time zsh -c "for i in {1..1000}; do files=(IMG*); echo \$files; done" | wc -l                                                                                                                                                                                        
1000
zsh -c "for i in {1..1000}; do files=(IMG*); echo \$files; done"  0.02s user 0.05s system 98% cpu 0.067 total

~ ➤  time fish -c "for x in (seq 1000); echo \$i; set files IMG_*; echo -n \$files; end" | wc -l                                                                                                                                                                          
1000
fish -c "for x in (seq 1000); echo \$i; set files IMG*; echo -n \$files; end  0.10s user 0.04s system 100% cpu 0.144 total


это прям максимально стандартный набор задачек для шелла — циклы, переменные, globbing.

fish слил в два с лишним раза zsh'у и в два с половиной раза bash'у.

единственное, что тормозит в zsh — это oh-my-zsh, но это какбэ не обязательный его компонент.

Исходная версия annerleen, :

The results are very impressive:

лол, это всё сказки для лохов.

как только дело доходит до худо-бедно реального скриптинга, fish показывает себя гораздо хуже того же zsh:

~ ➤  ls IMG*                                                                                                                                                                                                                                                              
IMG_20210924_1551085.jpg  IMG_20210925_1513060.jpg  IMG_20210928_2025289.jpg  IMG_20220122_1943576.jpg  IMG_8693.MOV

~ ➤  time bash -c "for i in \$(seq 1 1000); do files=\"IMG*\"; echo \$files; done" | wc -l                                                                                                                                                                                
1000
bash -c "for i in \$(seq 1 1000); do files=\"IMG*\"; echo \$files; done"  0.02s user 0.04s system 99% cpu 0.061 total

~ ➤  time zsh -c "for i in {1..1000}; do files=(IMG*); echo \$files; done" | wc -l                                                                                                                                                                                        
1000
zsh -c "for i in {1..1000}; do files=(IMG*); echo \$files; done"  0.02s user 0.05s system 98% cpu 0.067 total

~ ➤  time fish -c "for x in (seq 1000); echo \$i; set files IMG_*; echo -n \$files; end" | wc -l                                                                                                                                                                          
1000
fish -c "for x in (seq 1000); echo \$i; set files IMG_*; echo -n \$files; end  0.10s user 0.04s system 100% cpu 0.144 total


это прям максимально стандартный набор задачек для шелла — циклы, переменные, globbing.

fish слил в два с лишним раза zsh'у и в два с половиной раза bash'у.

единственное, что тормозит в zsh — это oh-my-zsh, но это какбэ не обязательный его компонент.