Hacker News new | ask | show | jobs
by ChristianBundy 3031 days ago
cd is part of your shell, so trying to invoke cd from another program would be like opening a new browser tab from another program. It's an internal feature without an outward-facing API.
1 comments

There's no reason why one shouldn't be able to invoke the chdir system call and implement the same behaviour.
Well, I mean, a program can call chdir() and it works exactly as it's supposed to, but it only affects that program, not a different program.
Allowing any process to arbitrarily modify the state of another process would be a disaster for stability and security.
Isn’t that what a debugger does?
Yes, and it is a disaster for stability and security. The designers of dtrace worked hard on the stability part. See, for example, the section on DIF safety in https://www.cs.princeton.edu/courses/archive/fall04/cos518/p....