V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Va1n3R
V2EX  ›  问与答

貌似发现一个 macos 的 GDB 缺陷...

  •  
  •   Va1n3R · 2018-05-30 23:01:25 +08:00 · 1411 次点击
    这是一个创建于 2399 天前的主题,其中的信息可能已经有所发展或是发生改变。

    很绝望
    想尝试带参数的 php,尝试了各种各样的姿势,只要后面那个参数带有空格,都没有办法执行
    like:
    php -r 'echo 1;'

    9 条回复    2018-06-01 16:01:07 +08:00
    VYSE
        1
    VYSE  
       2018-05-30 23:36:46 +08:00 via Android
    外层双引号试试
    Va1n3R
        2
    Va1n3R  
    OP
       2018-05-31 00:34:08 +08:00
    @VYSE 也不行的,就把它当作一个参数来解析了.
    changnet
        3
    changnet  
       2018-05-31 00:45:24 +08:00 via Android
    gdb -args php xxx 这样不行吗?带空格没问题啊,我都这么用。如果有问题应该是横杠的问题,网上找下转义
    ysc3839
        4
    ysc3839  
       2018-05-31 08:28:33 +08:00 via Android
    Unix 系统是 shell 解析参数的,argv 是原样传递过去的,所以这应该是 shell 的问题吧?
    Va1n3R
        5
    Va1n3R  
    OP
       2018-05-31 11:34:17 +08:00
    @changnet
    @ysc3839
    macos 有这个问题,我用 Ubuntu,debian 都没毛病
    ysc3839
        6
    ysc3839  
       2018-05-31 21:26:48 +08:00 via Android
    @Va1n3R 那也有可能是 macOS 下 shell 的 bug。我的建议是想办法看看传给 gdb 的 argv 是什么。
    ysc3839
        7
    ysc3839  
       2018-05-31 21:28:16 +08:00 via Android
    @Va1n3R 抱歉,我看错了。你这是在 gdb 内部执行的,那就不关 shell 的事了。
    Va1n3R
        8
    Va1n3R  
    OP
       2018-06-01 09:22:48 +08:00
    @ysc3839 好像还真的跟 shell 处理参数有关系...
    ysc3839
        9
    ysc3839  
       2018-06-01 16:01:07 +08:00 via Android
    @Va1n3R 有什么关系?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1548 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 265ms · UTC 16:49 · PVG 00:49 · LAX 08:49 · JFK 11:49
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.