A1k4id

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

  •  
  •   A1k4id · Jan 6, 2018 · 7915 views
    This topic created in 3228 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
    1762628386
    Jan 6, 2018
    1
    HHH 这面试的是玩你的吧
    mmqc
    mmqc
    Jan 6, 2018 via Android
    2
    hhhh 你可以告诉他,你爸在董事😏
    v2dead
    v2dead
    Jan 6, 2018
    3
    跟他说容我查个手册先。
    lhx2008
    lhx2008
    Jan 6, 2018 via Android
    4
    php 还有这种玩法。。
    lwbjing
    lwbjing
    Jan 6, 2018 via iPhone
    5
    窒息的操作
    chinvo
    chinvo
    Jan 6, 2018
    6
    令人智息
    t6attack
    t6attack
    Jan 6, 2018
    7
    这是拿自己开发中填过的坑来整人啊
    wulikanhua
    wulikanhua
    Jan 6, 2018
    8
    就这周刚好用过 chmod 这个函数,心疼你一秒
    voocel
    voocel
    Jan 6, 2018 via Android
    9
    记得好像 linux 还有个啥限制,哪怕设置成 777 也只能得到 755
    kkzxak47
    kkzxak47
    Jan 6, 2018 via Android
    10
    虽然脚本命令参数错了,可是脚本本身执行成功了啊
    zn
    zn
    Jan 6, 2018
    11
    这题目有 bug,至少也是楼主给的代码有歧义。实际上不管是 777 还是 0777 都运行失败。

    原因:

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


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

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

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