Khi tôi chạy lệnh này, nó hoạt động:
$ find . -inum 888696 -exec ls '{}' \;
Conversation.pst Outlook Data File Outlook Data File.sbd Trash Unsent Messages
Inbox.pst Outlook Data File.msf Sent.pst Trash.msf Unsent Messages.msf
Tuy nhiên, khi thay thế ls
bằng cd
nó không hoạt động:
$ find . -inum 888696 -exec cd '{}' \;
find: ‘cd’: No such file or directory
Tôi biết cd
là một tích bash
hợp sẵn, vì vậy tôi đã thử cái này cũng không hoạt động:
$ find . -inum 888696 -exec builtin cd '{}' \;
find: ‘builtin’: No such file or directory
Làm thế nào tôi có thể sử dụng cd
cùng với find -exec
lệnh?
CẬP NHẬT
Lý do tôi đang cố gắng để sử dụng cd
với find -exec
là tên thư mục là một trong những kỳ lạ mà các chương trình trên thiết bị đầu cuối của tôi như là một cái gì đó giống như ????
.
LC_ALL=C printf '%q\n' *
in tên ASCII cho tất cả các tệp trong thư mục hiện tại của bạn, từ một đến một dòng (thay đổi dòng mới thành$'\n'
hoặc tương tự).