找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1735|回复: 0

[建议] 提问前需搞清XY问题,提高交流效率

[复制链接]
100 分钢镚 回复本帖可获得 1 分钢镚奖励! 每人限 1 次(中奖概率 70%)
epiman 发表于 2024-7-22 23:55:18 | 显示全部楼层 |阅读模式

注册后推荐绑定QQ,之后方才可以使用下方的“用QQ帐号登录”。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
什么是XY问题?
4 F( n$ a* J+ R& q' v: \: i) M2 J1 U5 [& ~! s. Q4 z
XY问题是关于正在尝试的解决方案,而不是实际的问题。无论是对于寻求帮助的一方,还是提供帮助的一方,这都会造成大量时间、精力的浪费。$ C6 l. q2 i2 H3 ]
; e1 V2 p( }* r: p$ t& ?, x
  •     用户想做X。
  •     用户不知道怎么做X,但觉得如果能做到Y,就能摸索出解决方案。
  •     用户也不知道怎么做Y。
  •     用户请求对问题Y的帮助。
  •     其他人试图帮助用户解决Y,但却感到困惑,因为尝试解决Y似乎是个奇怪的问题。
  •     经过大量互动和浪费的时间后,终于发现用户其实需要X方面的帮助,而Y甚至不是对X的合适解决方案。& K& k6 H  X! o9 `" Q
0 A: `( E7 D. f- d* I( \9 l
当人们被自认为的解决方案卡住,无法退一步完整解释问题时,问题就出现了。  v0 p. X: B% I8 d

" |2 ]# {& f. u+ p+ V5 E+ v7 A示例
: o( N* i( F9 ?) M$ ~- E; w3 U; ?' ~
示例1
# f+ b7 J& y# t! P1 \6 M/ rn00b实际上不想要文件名中的最后3个字符,而是想要获取文件扩展名,为什么要问最后3个字符?
& i( H  |- L+ d3 c1 w
  1. <n00b> How can I echo the last three characters in a filename?
    4 y( Y+ c$ {, u- u! w5 j& ?
  2. <feline> If they're in a variable: echo ${foo: -3}
    ; [0 `1 w6 k& A$ J) a( P
  3. <feline> Why 3 characters? What do you REALLY want?
    $ \1 H$ w9 L: B
  4. <feline> Do you want the extension?! o, \* U- T9 f$ H
  5. <n00b> Yes.
    , d5 m, p, _0 g8 q  p, d. C# c
  6. <feline> There's no guarantee that every filename will have a three-letter extension,
    * r" G  h1 J8 m+ J% a# T6 t
  7. <feline> so blindly grabbing three characters does not solve the problem.
    ! P$ O9 @8 a$ f+ F# n
  8. <feline> echo ${foo##*.}
复制代码

1 v$ Q7 r6 l+ p3 D4 R/ E" v2 ~# }3 \示例20 e) J' F/ X3 ?' A, S& M# X6 A! T
如果Angela一开始就解释她想防止别人发现她的操作系统,可能讨论会更短、更有成效。( f1 z7 E: x9 Q# p2 F9 a
  1. Angela: 'nmap -O -A 127.0.0.1' returns some lines starting with 'OS:'. How to change it?
    $ ~: b' k8 N- L" Y) a
  2. Obama: Look in the sourcecode for nmap, find how it figures out the Linux part, then rewrite your TCP/IP stack to not operate in a way nmap can detect.9 P& M. y. Z% `$ \
  3. Angela: Yeah, but I don't know about linux system api at all.
    . k2 P( Y. a/ `% X- v- a
  4. Obama: Well, nmap's fingerprint is based on the way the TCP/IP stack works, there's no real way except to rewrite the appropriate parts of said stack.8 m* q" _0 D0 J, \" k" K3 j8 A
  5. Angela: I really need to avoid these messages. Can iptables do this work?
    , t) k1 P* n& ~2 y/ a( ~) f: j8 [
  6. Obama: Well, don't use OS detection or version scanning$ c9 z$ H( ]. R4 {
  7. Angela: I want to prevent others from knowing the type of my OS
复制代码
中文出处:https://segmentfault.com/a/1190000044541188. P" D2 d2 \5 ~5 R* B9 a9 N$ m
英文出处:https://xyproblem.info/
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

今日推荐上一条 /2 下一条

×
重塑学科基石

欢迎有闲之士完善公卫百科

值得:你的点滴投入,大家长期受益

回报:VIP会员特权,大额钢镚奖励

改名|钢镚|会员|联系我们|公卫人 ( 沪ICP备06060850号-3|沪公网安备31010402334125号 )

GMT+8, 2026-2-26 12:50 , Processed in 0.061941 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表