Tệp có đuôi .sh là gì?
Nó là một tập lệnh shell Bourne . Chúng được sử dụng trong nhiều biến thể của hệ điều hành giống UNIX. Chúng không có "ngôn ngữ" và được thông dịch bởi trình bao của bạn (trình thông dịch các lệnh đầu cuối) hoặc nếu dòng đầu tiên ở dạng
#!/path/to/interpreter
họ sẽ sử dụng trình thông dịch cụ thể đó. Tệp của bạn có dòng đầu tiên:
#!/bin/bash
và điều đó có nghĩa là nó sử dụng Bourne Again Shell, được gọi là bash. Nó là cho tất cả các mục đích thực tế thay thế cho sh cũ tốt.
Tùy thuộc vào thông dịch viên, bạn sẽ có ngôn ngữ khác nhau mà tệp được viết.
Hãy nhớ rằng trong thế giới UNIX, phần mở rộng của tệp không phải là phần mở rộng của tệp xác định tệp đó là gì (xem Cách thực thi tập lệnh shell).
Nếu bạn đến từ thế giới DOS / Windows, bạn sẽ quen thuộc với các tệp có phần mở rộng .bat hoặc .cmd (tệp hàng loạt). Chúng không giống nhau về nội dung, nhưng giống nhau về thiết kế.
Cách thực thi một tập lệnh shell
Không giống như một số hệ điều hành ngớ ngẩn, * nix không chỉ dựa vào các phần mở rộng để xác định những việc cần làm với một tệp. Quyền cũng được sử dụng. Điều này có nghĩa là nếu bạn cố gắng chạy tập lệnh shell sau khi tải xuống, nó sẽ giống như cố gắng "chạy" bất kỳ tệp văn bản nào. Phần mở rộng ".sh" chỉ ở đó để bạn thuận tiện nhận ra tệp đó.
Bạn sẽ cần làm cho tệp thực thi được. Giả sử rằng bạn đã tải xuống tệp của mình file.sh
, sau đó bạn có thể chạy trong thiết bị đầu cuối của mình:
chmod +x file.sh
chmod
là lệnh để thay đổi quyền của tệp, +x
đặt quyền thực thi (trong trường hợp này là cho mọi người) và cuối cùng bạn có tên tệp của mình.
Bạn cũng có thể làm điều đó trong GUI. Hầu hết thời gian, bạn có thể nhấp chuột phải vào tệp và chọn thuộc tính, trong XUbuntu các tùy chọn quyền sẽ giống như sau:
Nếu bạn không muốn thay đổi quyền. Bạn cũng có thể buộc trình bao chạy lệnh. Trong thiết bị đầu cuối, bạn có thể chạy:
bash file.sh
Vỏ phải giống như trong dòng đầu tiên của tập lệnh của bạn.
Làm thế nào là an toàn nó?
Bạn có thể thấy lạ khi bạn phải thực hiện một tác vụ khác theo cách thủ công để thực thi một tệp. Nhưng điều này một phần là do nhu cầu bảo mật mạnh mẽ.
Về cơ bản khi bạn tải xuống và chạy một tập lệnh bash, nó cũng giống như việc ai đó nói với bạn "chạy tất cả các lệnh này theo trình tự trên máy tính của bạn, tôi hứa rằng kết quả sẽ tốt và an toàn". Hãy tự hỏi bản thân xem bạn có tin tưởng bên đã cung cấp tệp này hay không, tự hỏi bản thân xem bạn có chắc chắn đã tải tệp xuống từ cùng một nơi như bạn nghĩ hay không, thậm chí có thể nhìn vào bên trong để xem có thứ gì đó không phù hợp hay không (mặc dù điều đó yêu cầu mà bạn biết gì đó về lệnh * nix và lập trình bash).
Rất tiếc, ngoài cảnh báo ở trên, tôi không thể đưa ra mô tả từng bước về những gì bạn nên làm để ngăn chặn những điều xấu xa xảy ra với máy tính của bạn; vì vậy, chỉ cần lưu ý rằng bất cứ khi nào bạn nhận và chạy một tệp thực thi từ một người nào đó mà bạn đang thực sự nói, "Chắc chắn rồi, bạn có thể sử dụng máy tính của tôi để làm gì đó".