Bash: Как установить текущий рабочий каталог в текущий каталог в цикле?

То же самое, если у вас включен root-доступ в SSH. Затем вы должны добавить

ALLOW_SSH_ROOT_USER=YES

в ваш файл /etc/rkhunter.conf.local

0
21.02.2020, 11:43
1 ответ

Вам нужно поместить команду cdвнутрь цикла. Суть в том, что ваши пути относятся к вашему текущему каталогу, поэтому рабочий каталог необходимо сбрасывать до начальной точки в начале каждой итерации, чтобы cdработал с вашим относительным путем.Подоболочка (... )делает это за нас (изменение каталога длится только в рамках подоболочки ).

#!/usr/bin/env bash
shopt -s globstar

for d in./*/**/*.tex
do
    dir="${d%/*}"     # Strip the *.tex pathname back to the containing directory
    tex="${d##*/}"    # Strip the *.tex pathname back to just the filename

    echo "Will process $tex in the subdirectory $dir" >&2
    (
        cd "$dir" || exit
        pdflatex "$tex"
    )
done
4
28.04.2021, 23:22

Теги

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