V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
A1k4id

令人难忘的面试题目!!!

  •  
  •   A1k4id · Jan 6, 2018 · 7407 views
    This topic created in 3041 days ago, the information mentioned may be changed or developed.
    今儿面试一个 PHP 中高级开发岗位,有这么一道面试题:Linux 下用 root 用户执行一个 php 脚本,脚本中使用`chmod($filename, 777);`来改变一个文件的权限为可读可写可执行,脚本可以执行成功吗?如果不可以,为什么?

    楼主答:不一定执行成功,一般 chmod 属于危险命令,php 配置可能禁用此函数,被禁用的函数肯定无法执行。
    面试官:如果没有禁用呢?
    楼主答:可以啊,root 拥有最高权限。
    面试官:错,不能执行,因为这里要写成 0777。
    捂脸,4 年工作经验,哎,我再去重温函数手册去吧~
    Supplement 1  ·  Jan 6, 2018
    大家遇到过什么难忘的题目,也分享分享,一起乐乐
    42 replies    2018-01-09 10:16:13 +08:00
    1762628386
        1
    1762628386  
       Jan 6, 2018
    HHH 这面试的是玩你的吧
    mmqc
        2
    mmqc  
       Jan 6, 2018 via Android
    hhhh 你可以告诉他,你爸在董事😏
    v2dead
        3
    v2dead  
       Jan 6, 2018
    跟他说容我查个手册先。
    lhx2008
        4
    lhx2008  
       Jan 6, 2018 via Android
    php 还有这种玩法。。
    lwbjing
        5
    lwbjing  
       Jan 6, 2018 via iPhone
    窒息的操作
    chinvo
        6
    chinvo  
       Jan 6, 2018
    令人智息
    t6attack
        7
    t6attack  
       Jan 6, 2018
    这是拿自己开发中填过的坑来整人啊
    wulikanhua
        8
    wulikanhua  
       Jan 6, 2018
    就这周刚好用过 chmod 这个函数,心疼你一秒
    voocel
        9
    voocel  
       Jan 6, 2018 via Android
    记得好像 linux 还有个啥限制,哪怕设置成 777 也只能得到 755
    kkzxak47
        10
    kkzxak47  
       Jan 6, 2018 via Android
    虽然脚本命令参数错了,可是脚本本身执行成功了啊
    zn
        11
    zn  
       Jan 6, 2018
    这题目有 bug,至少也是楼主给的代码有歧义。实际上不管是 777 还是 0777 都运行失败。

    原因:

    反引号 ` ` 是用来执行系统命令的, 然而 chmod($filename, 777); 却是一句 php 代码,所以无论是 777 还是 0777 都无法运行。


    当然如果你说你用反引号括起来的其实是 php 代码那我没话说。
    A1k4id
        12
    A1k4id  
    OP
       Jan 6, 2018
    @zn #11 谢谢指出歧义,我是“反引号括起来的其实是 php 代码”的意思!
    A1k4id
        13
    A1k4id  
    OP
       Jan 6, 2018
    @voocel umask 吗? root 下确实可以!
    A1k4id
        14
    A1k4id  
    OP
       Jan 6, 2018
    @wulikanhua #8 没关系,学艺不精,我认~
    colorwin
        15
    colorwin  
       Jan 6, 2018 via Android
    @zn 这是 markdown 表示行代码的语法吧
    A1k4id
        16
    A1k4id  
    OP
       Jan 6, 2018
    @v2dead #3
    @t6attack #7
    我没想到考纲重点在这里,也确实很少用到这些函数,基本都是用到了看看文档
    mcfog
        17
    mcfog  
       Jan 6, 2018
    又是一道想找脑筋急转弯玩的溜的人而不是找靠谱的工程师的面试题
    A1k4id
        18
    A1k4id  
    OP
       Jan 6, 2018
    @colorwin #15 是啊,``` ...```,无法编辑了
    A1k4id
        19
    A1k4id  
    OP
       Jan 6, 2018
    @lhx2008 #4
    @lwbjing #5
    @chinvo #6
    有点英语考试的感觉
    markyangd
        20
    markyangd  
       Jan 6, 2018 via iPhone
    这种题目真心很掉价。
    wdlth
        21
    wdlth  
       Jan 6, 2018
    因为那是八进制数,开头加 0
    这其实是 Linux 的题目了
    A1k4id
        22
    A1k4id  
    OP
       Jan 7, 2018 via iPhone
    @wdlth #21 平时终端下 chmod [-R] xxx file 这么操作,确实没想到
    mingyun
        23
    mingyun  
       Jan 7, 2018
    还真是令人难忘
    misaka19000
        24
    misaka19000  
       Jan 7, 2018 via Android
    这是在黑 PHP 吗
    humor66
        25
    humor66  
       Jan 7, 2018
    首先面试官面试的方法就有问题,不要直接去否定别人的答案,而应该去引导别人继续思考或者思考的方法,面试不是炫耀面试官厉害候选人菜鸡的地方,而应该去发现别人的优点。一流人招一流人才,二流人招三流人才。楼主还好没去
    Tony8Finet
        26
    Tony8Finet  
       Jan 7, 2018
    没人认真的思考过吗? 777 十进制转成八进制 0o1411,也就是 `chmod 1411 filename`

    结果是 root 可以执行脚本及二进制档,group 或其他人可以执行二进制档,但不能执行脚本。

    所以面试官错了!!
    marknote
        27
    marknote  
       Jan 7, 2018 via iPhone
    回字有四种写法:)
    Reficul
        28
    Reficul  
       Jan 7, 2018 via Android
    那么如果开了 SELinux 的咋搞?(手动斜眼
    cjyang1128
        29
    cjyang1128  
       Jan 7, 2018
    令人窒息
    killerv
        30
    killerv  
       Jan 7, 2018
    这个真没啥意思
    6ufq0VLZn0DDkL80
        31
    6ufq0VLZn0DDkL80  
       Jan 7, 2018
    这什么破壁问题
    goodryb
        32
    goodryb  
       Jan 7, 2018
    没说是什么 Linux 系统吗? 如果是 28 楼所说的,开了 SELLinux,在讨论下?
    A1k4id
        33
    A1k4id  
    OP
       Jan 7, 2018
    @Reficul #28
    @goodryb #32
    有点意思了,隐藏信息啊~
    deadEgg
        34
    deadEgg  
       Jan 7, 2018
    庆幸没面上吧,面试官脑回路都这样了,还指望是啥好公司。
    bobuick
        35
    bobuick  
       Jan 7, 2018
    这么脑残,确实难忘
    wangdu2012
        36
    wangdu2012  
       Jan 7, 2018 via iPhone
    就这么个函数?
    hustlike
        37
    hustlike  
       Jan 8, 2018 via iPhone
    哈哈哈哈
    user123
        38
    user123  
       Jan 8, 2018
    茴香豆有几种写法的 既视感
    ty89
        39
    ty89  
       Jan 8, 2018
    很多面试官都是这样的,给面试者挖坑,以便显得自己很厉害
    eamon666
        40
    eamon666  
       Jan 8, 2018
    这时候你该反问他 为什么前边要加个 0,那个 0 代表什么意思
    他如果说不出来,说明他对技术不是太上心的
    A1k4id
        41
    A1k4id  
    OP
       Jan 8, 2018
    @eamon666 #40 有且仅有这道题他对我做出了解释
    hienchu
        42
    hienchu  
       Jan 9, 2018
    深度为 n 的二叉树有多少种可能性
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5712 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 195ms · UTC 08:50 · PVG 16:50 · LAX 01:50 · JFK 04:50
    ♥ Do have faith in what you're doing.