How to execute commands within a subshell opened by another command?
ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
How to execute commands within a subshell opened by another command?
Hi,
I am trying to copy files stored in the clearcase, using a shell script.
In order to do this i need to logon as a user other than root and set the view with cleartool command:
su - <user> -c "cleartool setview <viewname>"
The problem is that now i need to access the files within this view, however the setview command opens a new shell and i can't seem to execute any commands within this shell. I've tried a number of options but no luck. Any attempt to access the files in the view results in an error saying that the files do not exist (meaning that the view was set and the shell opened by that command has closed by the time i was trying to access the files in the view, and back in the current shell those files are really non accessible, since there's no view set).
Can you first su to the user and then enter individual cleartool commands:
su - <user>
cleartool <subcommand>
cleartool <subcommand2>
cleartool <subcommand3>
...
You can do this, but you have to do things a little bit differently. It has been a couple of years since I have used clearcase, but I remember having to deal with this. I think cleartool has a startview command (or something like that) that starts the view. This command does not start a new shell. To actually see the files in the view, you actually look in a different filesystem. On our systems there would be a directory like /views/<view name>/ that would let you see the files in the view. I don't know if that is a typical location or something specials our admins had configured. Hopefully, this is enough to get you on the right path.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.