Câu trả lời:
Trên Linux: nếu bạn biết về PID, bạn có thể gửi tệp cmdline cho tệp đó. Ví dụ:
cat /proc/PID/cmdline
Điều này có thể sẽ thất bại nếu nhị phân được di chuyển sau khi chương trình được bắt đầu.
Và tất nhiên:
lsof -n | grep PID | grep ' txt '
và:
ls -la /proc/PID/exe
đó là một liên kết tượng trưng để thực thi.
/proc/PID/cmdline
không có ký tự dòng mới, vì vậy bạn có thể muốn làm một cái gì đó như cat /proc/PID/cmdline ; echo ''
.
tr '\0' ' ' < /proc/PID/cmdline ; echo ''
Sao chép id quá trình từ ps -e
lệnh và sau đó chạy như sau:
ps x | grep <process-id>
Không ai trong số các phương pháp ( ls
, lsof
hoặc cat
) trong câu trả lời khác làm việc cho tôi. Nếu tôi làm:
$ nano test.txt
Đây là người chiến thắng của tôi ,:
$ pgrep -f -l test
3074 nano test.txt
Hoặc, để chỉ nhận được PID để sử dụng nó trong lập trình:
$ pgrep -f test
3074
Đã thử nghiệm trên Kali Linux v1.0.6 (dựa trên Debian).
So với một đơn giản ls
, tôi phải thừa nhận nó không phải là một giải pháp di động, nhưng ít nhất nó hoạt động.