Итак, решение для занимательной минутки 1:
~$ - так в мануалах обычно обозначают где выполняется команда и от кого - в данном случае в домашнем каталоге непривилигированного пользователя.
< grep (первый grep) - перенаправить на ввод файл с именем grep
grep (второй grep) - собственно сам бинарь grep
grep (третий grep) - паттерн по которому ищется в файле grep
> $~ - перенаправить stdout grep'a в файл с именем $~
~$ - так в мануалах обычно обозначают где выполняется команда и от кого - в данном случае в домашнем каталоге непривилигированного пользователя.
< grep (первый grep) - перенаправить на ввод файл с именем grep
grep (второй grep) - собственно сам бинарь grep
grep (третий grep) - паттерн по которому ищется в файле grep
> $~ - перенаправить stdout grep'a в файл с именем $~