Trong Unix, tôi có thể chạy make
trong một thư mục mà không cd
'vào thư mục đó trước không?
Trong Unix, tôi có thể chạy make
trong một thư mục mà không cd
'vào thư mục đó trước không?
Câu trả lời:
make -C /path/to/dir
Như đã lưu ý trong các câu trả lời khác, make (1) có một -C
tùy chọn cho việc này; một số lệnh có các tùy chọn tương tự (ví dụ tar). Điều hữu ích cần lưu ý là đối với các lệnh khác thiếu các tùy chọn như vậy có thể được sử dụng như sau:
(cd /dir/path && command-to-run)
Điều này chạy lệnh trong một shell con đầu tiên có thư mục làm việc của nó thay đổi (trong khi chỉ để lại thư mục làm việc của shell cha). Ở đây &&
được sử dụng thay vì ;
để bắt các trường hợp lỗi trong đó thư mục không thể thay đổi.
trang điểm:
all:
gcc -Wall -Wpedantic -std=gnu99 -g src/test.c -o build/test
run:
./build/test
hoặc là
run:
./../build/test
Vân vân.