Ваша магічна штука - це крапка з комою… і фігурні дужки:
{ cat wordlist.txt ; ls ~/folder/* ; } | wc -l
Фігурні дужки лише групують команди разом, щоб знак труби |впливав на комбінований вихід.
Ви також можете використовувати круглі дужки ()навколо групи команд, яка виконувала б команди в підзарядці. Це має тонкий набір відмінностей з фігурними брекетами, наприклад, спробуйте наступне:
cd $HOME/Desktop ; (cd $HOME ; pwd) ; pwd
cd $HOME/Desktop ; { cd $HOME ; pwd ; } ; pwd
Ви побачите, що всі змінні середовища, включаючи поточний робочий каталог, скидаються після виходу з групи дужок, але не після виходу з групи фігурних дужок.
Що стосується крапки з комою, до альтернативних варіантів відносяться знаки &&та ||, які умовно виконують другу команду, лише якщо перша є успішною або, якщо ні, відповідно, наприклад
cd $HOME/project && make
ls $HOME/project || echo "Directory not found."