сценарий оболочки - не добавляйте кавычки

En MacOS, lo siguiente en realidad tiene el comportamiento que busco (y posiblemente no utilice el sondeo.)

https://github.com/brainopener/mac-pid-waiter

#include 
#include 
#include 
#include 

int main(int argc, const char * argv[]) {

    pid_t pid;    
    if(argc!=2 || (pid=atoi(argv[1]))<=0)
    {
        fprintf(stderr,"USAGE\nwaiter pid\n");
        return 1;
    }

    int kq=kqueue();
    if (kq == -1) {
        fprintf(stderr,"kqueue returned -1.");
    return 1;
    }

    struct kevent ke;    
    EV_SET(&ke, pid, EVFILT_PROC, EV_ADD, NOTE_EXIT, 0, NULL);

    if (kevent(kq, &ke, 1, NULL, 0, NULL)<0) {
        fprintf(stderr,"kevent failed.");
    return 1;
    }


    for(;;) {
        memset(&ke,0,sizeof(struct kevent));
        if(kevent(kq, NULL, 0, &ke, 1, NULL)<0){
            fprintf(stderr,"kevent failed.");
        return 1;
        }

        if (ke.fflags & NOTE_EXIT)
        break;
    }

    return 0;
}

1
14.03.2018, 18:47
1 ответ

Скорее всего, globstarне установлен в сценарии оболочки.

Вы можете включить его с помощью shopt -s globstar.

#!/bin/bash
set -x
shopt -s globstar
npm run test:1 **/"$1".test.js
5
28.04.2021, 23:49

Теги

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