← All posts tagged Bash

smeea
Linux shell Bash posix Объясните почему посикс шелл на этом сосет хуйцы:
~ % cat 1
#!/bin/bash
echo ${@-foo}
for i in "$@"; do
echo "bar"
done
~ % ./1
foo
~ % cat 2
#!/bin/sh
echo ${@-foo}
for i in "$@"; do
echo "bar"
done
~ % ./2

Почему баш корректно считает переменную аргумента неопределенной и не запускает луп, а так же выводит заместо неопределенной переменной заданное 'foo', а каноничный шелл делает непонятное — для первой команды он считает переменную определенной (но пустой) и выводит ее значение, но луп в то же время не запускает, как будто она не определена?
smeea
sed Linux sdcv shell Bash Пользуюсь для переводов с/на английский sdcv с LingvoUniversal словарем и совершенно не устраивает раздутый вывод sdcv. Вот — codepad.org — быдлопарсер на седе для укорочения его вывода из такого — codepad.org — в такой — codepad.org . Быдлокодовое говно, но по крайней мере выглядит так, словно работает.