О -моя -zsh команда "взять" -Есть ли аналог в Fish?

Вот короткий сценарий bash, который я придумал. Обратите внимание, что вам нужно будет заменить logger\.shв операторах grep на имя процесса, который вы хотите отслеживать. В этом случае он проверяет процесс с именем «logger.sh» и получает PID.

#!/bin/bash

pid=$(ps aux | grep "logger\.sh" | head -n 1 |  awk '{print $2}');

if [ "$pid" != "" ] 
    then
    pidFound=1;
    while [ "$pidFound" = 1 ]
    do
        rm /sdcard/Android/data/app/log1;
        rm /sdcard/Android/data/app/log2;
        sleep 5;
        pid=$(ps aux | grep "logger\.sh" | head -n 1 |  awk '{print $2}');
        if [ "$pid" != "" ]; then
            pidFound=1;
        else
            pidFound=0;
            break
        fi
    done
fi
1
21.11.2021, 16:15
1 ответ

Не встроен -, но очень легко воспроизводится:

function take
    mkdir -p "$argv[1]"; and cd "$argv[1]"
end

funcsave take

Это создаст ленивую -функцию загрузки в $HOME/.config/fish/functions/take.fish. Под «ленивой загрузкой -» мы подразумеваем, что функция не загружается при запуске Fish, а только при первом запуске команды take. Таким образом, он всегда доступен, но занимает память только при запуске.

4
21.11.2021, 20:40

Теги

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