- 积分
- 367815
好友
记录
日志
相册
回帖0
主题
分享
精华
威望 旺
钢镚 分
推荐 人
|

注册后推荐绑定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- <n00b> How can I echo the last three characters in a filename?
4 y( Y+ c$ {, u- u! w5 j& ? - <feline> If they're in a variable: echo ${foo: -3}
; [0 `1 w6 k& A$ J) a( P - <feline> Why 3 characters? What do you REALLY want?
$ \1 H$ w9 L: B - <feline> Do you want the extension?! o, \* U- T9 f$ H
- <n00b> Yes.
, d5 m, p, _0 g8 q p, d. C# c - <feline> There's no guarantee that every filename will have a three-letter extension,
* r" G h1 J8 m+ J% a# T6 t - <feline> so blindly grabbing three characters does not solve the problem.
! P$ O9 @8 a$ f+ F# n - <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
- Angela: 'nmap -O -A 127.0.0.1' returns some lines starting with 'OS:'. How to change it?
$ ~: b' k8 N- L" Y) a - 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% `$ \
- Angela: Yeah, but I don't know about linux system api at all.
. k2 P( Y. a/ `% X- v- a - 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
- Angela: I really need to avoid these messages. Can iptables do this work?
, t) k1 P* n& ~2 y/ a( ~) f: j8 [ - Obama: Well, don't use OS detection or version scanning$ c9 z$ H( ]. R4 {
- 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/ |
|