Linux - Сценарий оболочки и цветной текст

Подробно останавливаясь на одном из комментариев, я не думаю, что Вы делаете то, что Вы думаете, что делаете.

Сначала я создал огромную сумму файлов, для моделирования ситуации:

$ mkdir foo
$ cd foo/
$ for X in $(seq 1 1000);do touch {1..1000}_$X; done

Затем я попробовал то, что я ожидал приводить к сбою, и что это кажется, что Вы делаете в вопросе:

$ rm -r foo/*
bash: /bin/rm: Argument list too long

Но это действительно работает:

$ rm -r foo/
$ ls foo
ls: cannot access foo: No such file or directory
1
23.05.2017, 15:40
1 ответ

Один путь, который будет работать в большинстве оболочек (не просто bash) должен удостовериться, что Escape появляется в тексте сценария оболочки.

Если Вы используете vim, затем необходимо будет все еще ввести Управление-VEscape для ввода Escape, потому что иначе Escape изменяется от режима вставки назад к командному режиму.

Другие редакторы могут или не могут иметь причуд для создания этого легче — или тяжелее.

Если Вы используете bash и не заботьтесь о мобильности, затем существуют другие доступные опции, с помощью \e нотация для Escape (см. bash руководство по ANSI-C, Заключающему в кавычки). Например:

escape=$'\e'

Это не будет работать со всеми другими оболочками, все же.

1
27.01.2020, 23:54
  • 1
    Да, Вы правы. Я действительно должен использовать тот же метод Escape, в vim. –   24.02.2013, 02:16

Теги

Похожие вопросы