Так как вы используете ./*/
как глобус, $d
будет содержать что-то вроде ./dir/
, поэтому вы собираетесь запустить convert *.jpg(n)./dir/.pdf && mv./dir/.pdf.
. Также обратите внимание, что .
— это текущий каталог, а не родительский (, который является..
).
Здесь вам нужно что-то вроде:
for dir (./*(/)) (convert $dir/*.jpg(n) $dir.pdf)
Здесь мы используем квалификатор(/)
glob для выбора файлов типа каталог(измените на (-/)
, если вы также хотите включить символические ссылки на каталоги как с вашим */
подходом ).
Вы получите ошибки для каталогов, в которых нет не -скрытых jpg-файлов, но поскольку мы используем подоболочки, это приводит только к выходу из подоболочки.
Если вы хотите избежать ошибок, вы можете проверить наличие файлов jpg, например:
for dir (./*(/)) {
files=($dir/*.jpg(Nn)) # N for nullglob
(($#files == 0)) || convert $files $dir.pdf
}
Или с помощью анонимной функции:
for dir (./*(/)) (){(($# == 0)) || convert $* $dir.pdf} $dir/*.jpg(Nn)
Если карта Wi -Fi поддерживает это, вам придется добавить второй виртуальный интерфейс к физическому интерфейсу. Используемая вами команда iw пыталась добавить второй управляемый интерфейс к виртуальному интерфейсу. В конце концов, вам нужен второй интерфейс AP для phy. У вашей карты также может быть зарезервирован MAC-адрес, поэтому попробуйте не назначать MAC-адрес.
iw phy0 interface add ap0 type __ap
Обратите внимание, что в «__ap» есть два символа подчеркивания, а ap0 — это просто произвольное имя виртуального интерфейса.