Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [Hệ điều hành Unix] Độ ưu tiên: alias, builtin, PATH

    Độ ưu tiên: alias, builtin, PATH

    Khi gõ một lệnh, shell phân giải theo thứ tự ưu tiên:

    1. alias (nếu lệnh là một alias đã định nghĩa)
    2. builtin (lệnh dựng sẵn của shell, ví dụ cd, echo)
    3. PATH (file thực thi đầu tiên tìm thấy trong PATH)

    Cho danh sách alias, danh sách builtin, PATH cùng tập file thực thi, và lệnh cần phân giải. In ra kết quả:

    • alias: <giá trị> nếu là alias
    • builtin nếu là builtin
    • đường dẫn đầy đủ nếu tìm thấy trong PATH
    • not found nếu không có

    Ví dụ

    Input:
    1
    ll=ls -l
    2
    cd
    echo
    /usr/bin:/bin
    1
    /bin ls
    ll
    
    Output:
    alias: ls -l
    
    • Định dạng đầu vào:

      Dòng 1: số A alias, theo sau A dòng ten=giatri. Dòng kế: số B builtin, theo sau B dòng tên. Dòng kế: PATH. Dòng kế: số F file, theo sau F dòng thư_mục lệnh. Dòng cuối: lệnh cần phân giải.

    • Ràng buộc đầu vào:

      0 ≤ A, B, F ≤ 100.

    • Định dạng đầu ra:

      In kết quả phân giải theo độ ưu tiên alias > builtin > PATH.

    Ví dụ:

    Đầu vào:

    1
    ll=ls -l
    2
    cd
    echo
    /usr/bin:/bin
    1
    /bin ls
    ll
    

    Đầu ra:

    alias: ls -l

    Giải thích:

    ll là alias nên ưu tiên cao nhất, in 'alias: ls -l' mà không cần xét PATH.

    Đang tải editor...