Tôi có một ứng dụng Java được thực hiện từ một tập lệnh shell ([ba] sh) và không may đôi khi những người chịu trách nhiệm triển khai nó và bắt đầu nó không chuyển sang người dùng thích hợp trước khi bắt đầu ứng dụng. Trong tình huống này, tôi muốn ứng dụng không chạy ít nhất, và lý tưởng nhất là cảnh báo không làm điều đó. Tôi đã nghĩ về việc cố gắng tạo bí danh java hoặc thay đổi đường dẫn root để bao gồm một java giả mạo, nhưng điều này có thể có tác dụng phụ không mong muốn và sẽ không có hiệu quả dễ dàng vì kịch bản lệnh shell chỉ định đường dẫn đầy đủ đến tệp nhị phân java .Cách dễ nhất trong tập lệnh trình bao để đảm bảo nó không chạy dưới dạng gốc?
Vì vậy, có một thành ngữ chuẩn trong kịch bản lệnh shell cho 'không chạy nếu tôi là root' không?
Vui lòng cho biết shell ... BASH shell, CMD shell? –
Xin lỗi, tôi không nghĩ về các kịch bản lệnh shell shell như các kịch bản shell nhiều như 'batch file', vì vậy nó không xảy ra với tôi để phân biệt. – Jherico
bash có '$ EUID' nhưng cristis có câu trả lời di động bên dưới. – msw