2013-02-27 29 views
9

Tôi đang sử dụng thiết bị đầu cuối Mac OS X. Làm thế nào tôi có thể biết một thư mục được trả về bởi "ls" là một liên kết tượng trưng hay thư mục thực? Nếu đó là một liên kết tượng trưng, ​​làm thế nào tôi có thể kiểm tra nơi nó đang liên kết đến, hoặc sửa đổi nó?Làm cách nào để biết thư mục từ "ls" có phải là liên kết tượng trưng không?

Tôi thực sự đã cố gắng nghiên cứu điều này một số tiền hợp lý, nhưng mọi thứ tôi đã tìm thấy là tạo các liên kết tượng trưng. Gần nhất tôi đã đến là có thể thiết lập màu sắc cho một số thứ trong thiết bị đầu cuối của tôi. Tôi giả sử có một lệnh thực tế để nhận thông tin về một thư mục hoặc tập tin.

+1

Bạn có thể muốn 'stat'. Nhập 'man stat' để biết thêm thông tin. – squiguy

Trả lời

16

Sử dụng ls -l

Ví dụ đầu ra:

-rwxr-xr-x 1 kormoc staff 642 Nov 22 2010 getCactiImages.sh 
lrwxr-xr-x 1 kormoc staff 36 Aug 29 15:29 imgopt -> ../Projects/imgopt/imgopt 

imgopt là một liên kết tượng trưng, ​​getCactiImages.sh là một tập tin bình thường

Bạn cũng có thể sử dụng stat filename

Ví dụ:

File: ‘imgopt’ -> ‘../Projects/imgopt/imgopt’ 
    Size: 36   Blocks: 8   IO Block: 4096 symbolic link 
Device: 1000005h/16777221d Inode: 7743835  Links: 1 
Access: (0755/lrwxr-xr-x) Uid: ( 501/ kormoc) Gid: ( 20/ staff) 
Access: 2012-08-29 15:29:19.000000000 -0700 
Modify: 2012-08-29 15:29:19.000000000 -0700 
Change: 2012-08-29 15:29:19.000000000 -0700 
Birth: 2012-08-29 15:29:19.000000000 -0700 
4

ls -al sẽ cho bạn biết. Liên kết tượng trưng sẽ được ghi nhận như: target -> source

0

Với lệnh 'ls -F', tên tệp sẽ có '@' làm hậu tố. Để xem liên kết sử dụng 'ls -l'. Bạn có thể thấy thuận tiện để xác định

alias ls='ls -F' 
alias ll='ls -l' 
Các vấn đề liên quan