% cat >test
echo "$0"
echo "$1"
echo "$2"
echo "$3"
% dash
$ D="one two three"
$ sh test $D
test
one
two
three
$ exit
% bash
minoru@hearth ~ $ D="one two three"
minoru@hearth ~ $ sh test $D
test
one
two
three
minoru@hearth ~ $ exit
exit
% zsh
% D="one two three"
% sh test $D
test
one two three
%
WAT
Пролистал zhsoptions
, но ничего релевантного не нашёл. Не понимаю, как это гуглить. Что это за фигня? (/bin/sh -> bash
, если что, но это не должно быть релевантно)
xxx: Подключил флейту к компрессору, сыграл имперский марш
xxx: Все равно скучно
© http://bash.im/quote/434543
Так вот, у меня половина продакшен кода таким образом написана.
Зато всё ниибически ООП, сплошь абстракции-хуякции, полная реиспользуемость кода, минимум аллокаций и максимум производительности.
Это я к чему. Каждый дрочит как он хочет, и нечего мешать дрочить творческому человеку, особенно — в рабочее время.
Написал таймер на баше, чтобы замерять потраченное на работу время. Вот он:
```bash
TIME_SPENT=0
file=~/.timespent
[[ $1 == "stop" ]] && { rm /tmp/timer.run.lock /tmp/timer.sleep.lock; exit 0; } \
|| [[ $1 == "wait" ]] && { rm /tmp/timer.sleep.lock; exit 0; } \
|| [[ $1 == "go" ]] && { touch /tmp/timer.sleep.lock; exit 0; } \
|| {
echo "Starting timer"
touch /tmp/timer.run.lock /tmp/timer.sleep.lock
}
while [ -f /tmp/timer.run.lock ]
do
while [ ! -f /tmp/timer.sleep.lock ]
do
sleep 1
done
T0=date +%s
while [ -f /tmp/timer.sleep.lock ]
do
sleep 1
done
T1=date +%s
(( TIME_SPENT += T1-T0 ))
done
echo "$(date +%F) $(date -u +%T --date="@${TIME_SPENT}") $@" >> $file
bash
Справка:
$ timer фап # запускает таймер
$ # (fap in progress...)
$ timer wait # пауза
$ # (talking on the phone...)
$ timer go # продолжаем веселье
$ timer stop # キタ———(°∀°)———ッ!!
$ cat ~/.timespent
2015-03-20 00:42:12 фап
$ _
```
Из минусов — таймит только одну задачу. Можно запустить несколько штук, но останавливаться они будут одновременно.
Чят, делись своими быстрорецептами как проснуться через два часа.
inb4: sleep 7200 && mpv *
Про оператор «двоеточие» в баше:
Понапихают ерунды…