Có -x
nghĩa là gì ở đây:
if [ -x /etc/rc.local ] then
Làm thế nào tôi có thể tìm ra trang hướng dẫn này cho if
?
help if
chưa
Có -x
nghĩa là gì ở đây:
if [ -x /etc/rc.local ] then
Làm thế nào tôi có thể tìm ra trang hướng dẫn này cho if
?
help if
chưa
Câu trả lời:
Từ các man bash
trang (đặc biệt là phần GIẢI THÍCH ĐIỀU KIỆN):
-a file
True if file exists.
-b file
True if file exists and is a block special file.
-c file
True if file exists and is a character special file.
-d file
True if file exists and is a directory.
-e file
True if file exists.
-f file
True if file exists and is a regular file.
-g file
True if file exists and is set-group-id.
-h file
True if file exists and is a symbolic link.
-k file
True if file exists and its ``sticky'' bit is set.
-p file
True if file exists and is a named pipe (FIFO).
-r file
True if file exists and is readable.
-s file
True if file exists and has a size greater than zero.
-t fd True if file descriptor fd is open and refers to a terminal.
-u file
True if file exists and its set-user-id bit is set.
-w file
True if file exists and is writable.
-x file
True if file exists and is executable.
[...]
test
bash, bạn không gọi test
nhị phân. Thay vào đó, bạn đang gọi test
dựng sẵn bash , có tài liệu tại help test
, trong số những nơi khác. man test
có thể gây hiểu nhầm trong một số trường hợp vì lý do đó.
if
chính nó là một từ khóa shell, vì vậy bạn có thể tìm thấy thông tin về nó với help if
. if
chính nó chỉ là các nhánh dựa trên việc lệnh tiếp theo trả về true (0) hay false (không phải zero). Những gì bạn thực sự muốn, mặc dù là man [
hay man test
, nơi [
là một bí danh cho test
. Câu lệnh đó thực sự đang thực thi test -x /etc/rc.local
, kiểm tra xem tệp đó có tồn tại và có thể thực thi được không (hoặc có quyền tìm kiếm).
man [
làm việc quá
if
không phải là shell dựng trong từ khóa shell. Chạy lệnh này type if
để kiểm tra điều đó.
Từ info test
:
`-x FILE'
True if FILE exists and execute permission is granted (or search permission, if it is a directory).
Thực thi quyền là cần thiết trên một thư mục để có thể cd vào nó (nghĩa là để làm cho một số thư mục thư mục làm việc hiện tại của bạn).
Thực thi là cần thiết trên một thư mục để truy cập thông tin "inode" của các tập tin trong. Bạn cần điều này để tìm kiếm một thư mục để đọc các nút của các tệp trong đó. Vì lý do này, quyền thực thi trên một thư mục thường được gọi là quyền tìm kiếm thay thế.