• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. adding quotation marks in a string - nesting strings

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 143
  • Views 1929
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

adding quotation marks in a string - nesting strings

lperktold
lperktold over 14 years ago

Hello,

 I would like to run a shell command and wait for it to finish before SKILL continues.

 Assume I want to delete a directory hirachically, (I didn't find a hirachically delete command in SKILL) by running

 ccmd = sprintf(strx "rm -r %s" run_directory)
 csh(ccmd)

Thid works fine, but SKILL is not waiting for the csh command to finish. So I tried to use the inter process communication capability of SKILL:

ccmd = sprintf(strx "rm -r %s" run_directory)
cid = ipcBeginProcess( strcat("csh(\"" ccmd "\")" ) )
ipcWait(cid)

This code does not give me any errors or warnings but does also not delte the directory. I guess the basic problem comes with nesting of  strings when running ipcBeginProcess(). The csh() command as well as the ipcBeginProcess() command expect a string as an argument. I tried to nest those two strings by using the quotation mark escape sequence. SKILL then produces a string like:

> strcat("csh(\"" ccmd "\")" )
"csh(\"rm -r /simulation/320MHz_1.2V_27deg\")"

It seems like the csh() command is not capable of interpreting its given string correctly? But this is just a guess.

Would appreciate any comments.

Enjoy Lunch,
Lukas

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 14 years ago
    Not sure why csh("command") is not waiting (it does for me).

    With ipcBeginProcess, you want to do ipcBeginProcess("rm -rf dir" ...) and not a command like "csh(rm -rf ...)" because that's not a valid UNIX command.

    Regards,

    Andrew
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 14 years ago
    Not sure why csh("command") is not waiting (it does for me).

    With ipcBeginProcess, you want to do ipcBeginProcess("rm -rf dir" ...) and not a command like "csh(rm -rf ...)" because that's not a valid UNIX command.

    Regards,

    Andrew
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information