Вопросы с тегом «brace-expansion»

Механизм оболочки, который используется для генерации произвольных строк.


6
Как создать последовательность с ведущими нулями, используя расширение скобки
Когда я использую следующее, я получаю ожидаемый результат: $ echo {8..10} 8 9 10 Как я могу использовать это расширение скобки простым способом, чтобы получить следующий результат? $ echo {8..10} 08 09 10 Я теперь, что это может быть получено с помощью seq(не пытался), но это не то, что я …

4
Как я могу использовать переменную $ в расширении оболочки скобки последовательности?
Я хочу использовать $var inрасширение скобки оболочки с диапазоном, в bash. Просто положить {$var1..$var2}не работает, поэтому я пошел "боковой" ... Следующее работает, но немного туповато. # remove the split files echo rm foo.{$ext0..$extN} rm-segments > rm-segments source rm-segments Есть ли более "нормальный" способ?


6
кошка очень большое количество файлов в правильном порядке
У меня есть около 15 000 файлов, которые называются file_1.pdb, file_2.pdbи т.д. Я могу кот около нескольких тысяч из них в порядке, выполнив: cat file_{1..2000}.pdb >> file_all.pdb Однако, если я сделаю это для 15 000 файлов, я получу ошибку -bash: /bin/cat: Argument list too long Я видел, как эта проблема …


3
Тайна раскрытия вложенных скобок в Bash
Эта: $ echo {{a..c},{1..3}} производит это: a b c 1 2 3 Что приятно, но трудно объяснить, учитывая, что $ echo {a..c},{1..3} дает a,1 a,2 a,3 b,1 b,2 b,3 c,1 c,2 c,3 Это где-то задокументировано? Bash Reference не упоминает об этом (даже если у него есть пример , используя его).

5
bash: используйте переменную для хранения перенаправления stderr | stdout
Есть ли способ перенаправить stdout и stderr через переменную, например, добавив параметры команды в сценарии? Например, у меня есть скрипт: #!/bin/bash -x TEST=">/dev/null 2>&1" OPT='-p -v' mkdir $OPT 123/123/123 $TEST Я вижу, что OPT заменяется -pбез каких-либо проблем, и bash интерпретирует его как опцию. Но перенаправление интерпретируется как имя каталога. …

3
Использование фигурных скобок (фигурных скобок) для создания структуры папок с помощью `mkdir -p`
Как man mkdirговорится -p, --parents no error if existing, make parent directories as needed Когда я запустил эту команду mkdir -p work/{F1,F2,F3}/{temp1,temp2} Она создает структуру папок , как эти workродительскую папку затем F1, F2, F3дочерние папки и temp1и temp2дочерние папки в три родительских папке F1, F2, F3. work -F1 -temp1 …

3
Почему не systemctl \ {restart, status} \ sshd \; Работа?
Вывод вышеуказанной команды при передаче через echo: # echo systemctl\ {restart,status}\ sshd\; systemctl restart sshd; systemctl status sshd; Даже если я вставлю вывод в терминал, команда работает. Но когда я пытаюсь выполнить команду напрямую, я получаю: # systemctl\ {restart,status}\ sshd\; bash: systemctl restart sshd;: command not found... У меня есть …

4
Когда {a, b, c} раскрывается в bash, а когда нет?
Скрипт bash, который содержит for i in {a,b}-{1,2}; do echo $i; done печать a-1 a-2 b-1 b-2 когда выполнено. Это то, что я ожидал - поскольку {a,b}конструкция расширяется. Однако когда (другой) скрипт содержит v={a,b}-{1,2} echo $v это печатает {a,b}-{1,2} это не то, что я ожидал. Я ожидал, что это напечатает …

3
Почему «cat {foo}» не выводит foo, а «cat {foo, bar}» делает?
Я пытался объединить текстовые файлы в подпапках и попытался: cat ./{mainfolder1,mainfolder2,mainfolder3}/{subfolder1}/book.txt > out$var Однако это ничего не вернуло. Итак, попытался добавить несуществующую подпапку2 cat ./{mainfolder1,mainfolder2,mainfolder3}/{subfolder1,subfolder2}/book.txt > out$var И на этот раз все получилось, конкатенация файлов прошла успешно. Почему это происходит?

3
Расширение Bash скобки после косой черты
Я пытаюсь скопировать файл с другим именем в тот же каталог, используя расширение скобки. Я использую Bash 4.4.18. Вот что я сделал: cp ~/some/dir/{my-file-to-rename.bin, new-name-of-file.bin} но я получаю эту ошибку: cp: cannot stat '/home/xyz/some/dir/{my-file-to-rename.bin,': No such file or directory Даже простое расширение скобки, подобное этому, выдает мне ту же ошибку: …

3
Можно ли использовать скобки (перестановку) и расширение массива одновременно?
{}Синтаксис расширения скобок Bash позволяет создавать простые перестановки # echo {b,c,d}{a,e,i,o,u} ba be bi bo bu ca ce ci co cu da de di do du Однако мне не ясно, если / как можно использовать это вместе с массивами, за исключением очень неудобного использования $() echoиeval Есть ли простой способ …


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.