Нет ничего неправильно с Вашей первой функцией кроме существует опечатка.
Символ перед cvf
не минус символ.
Вы используете станд. США 101 ключевая клавиатура?
Вынимание этого в целом (минус является дополнительным на большинстве переключателей tar) и функции хорошо работает.
Или иначе, Вы могли зафиксировать его с надлежащим -cvf
Кроме того, нет никакой потребности в export
экспортируйте заставляет переменную среды иметь больше персистентности, чем Вам нужно в функции как это.
Я предполагаю, что Вы читаете Усовершенствованное Руководство по созданию сценариев Bash
Посмотрите на let
, local
и export
.
Посмотрите, как они варьируются, когда использовать один или другой.
Да, необходимо попытаться переписать второе как функцию.
Менее вложенное заключение в кавычки и передача по каналу, при изучении, сделают запись, функционирует и искажает легче.
Лайнеры прибывают позже :)
Это не находится на сочетаниях клавиш, а на символах. Это может быть, покончили stty stop
и stty start
. Как:
stty stop '^T'
Выше ^T
могут быть любой эти два символа ^
и T
или это ^T
символ (который можно ввести путем ввода lnext символа (обычно ^V
) сопровождаемый Ctrl-T).