是不是会 shell 脚本,会让码农变得有内涵呢? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
miketeam
V2EX    程序员

是不是会 shell 脚本,会让码农变得有内涵呢?

  •  
  •   miketeam
    5nnok 2018-01-28 11:09:49 +08:00 7375 次点击
    这是一个创建于 2814 天前的主题,其中的信息可能已经有所发展或是发生改变。

    经常遇到这么一个情景:我忙半天,同事过来说,别费劲了,等哈我给你一个脚本。过了几分钟然后 .sh 文件来了。。。

    44 条回复    2018-04-02 17:27:43 +08:00
    Mitt
        1
    Mitt  
       2018-01-28 11:17:25 +08:00 via iPhone
    要学会利用工具
    miketeam
        2
    miketeam  
    OP
       2018-01-28 11:19:04 +08:00
    我也想变得有内涵一点,亲们,给我推荐一些自家珍藏的教程吧
    0ZXYDDu796nVCFxq
        3
    0ZXYDDu796nVCFxq  
       2018-01-28 11:23:26 +08:00 via iPhone
    会 perl 显得更有内涵
    IamI
        4
    IamI  
       2018-01-28 11:26:46 +08:00   1
    你以为那句「人生苦短,我用 XX 」是怎么来的……
    bramblex
        5
    bramblex  
       2018-01-28 11:28:34 +08:00   1
    嗯……这叫做善用工具。

    你把 shell 换成 python / nodejs / ruby / 甚至坑爹的 perl / vb 都行……

    让人程序员有内涵的是使用工具代替人力的思维方式,在这种思维的引导下,你自然就学会了 shell / python / js 这些个性价比极高的编程语言。
    gouchaoer
        6
    gouchaoer  
       2018-01-28 11:29:04 +08:00 via Android
    shell 脚本太暧昧了,不咋会,所以我都用 py/php 写脚本
    zlfzy
        7
    zlfzy  
       2018-01-28 11:30:49 +08:00
    会编程的运维更有内涵
    4BVL25L90W260T9U
        8
    4BVL25L90W260T9U  
       2018-01-28 11:32:25 +08:00 via Android
    这算是基本功吧
    kiwi95
        9
    kiwi95  
       2018-01-28 11:55:01 +08:00   3
    很多时候 shell 确实方便,随便写两行就能干事,推荐一个教程:abs guide: www.tldp.org/LDP/abs/html/abs-guide.html
    miketeam
        10
    miketeam  
    OP
       2018-01-28 11:55:23 +08:00 via iPhone
    Death
        11
    Death  
       2018-01-28 12:10:46 +08:00   4
    不会,你所指的应该是一种用脚本解决繁琐问题的思维习惯,与解决问题用的是不是 shell 脚本无关。

    工具永远不是内涵,会利用正确、合适的工具来解决问题才算是内涵吧。
    tankb52
        12
    tankb52  
       2018-01-28 12:12:58 +08:00
    我在 windows 下面都经常写批处理。
    ceyes
        13
    ceyes  
       2018-01-28 12:39:10 +08:00
    Work smart, not hard~
    jyf007
        14
    jyf007  
       2018-01-28 12:47:59 +08:00
    @Death 说得好,所以我成为了运维狗
    hsuan
        15
    hsuan  
       2018-01-28 12:50:42 +08:00 via Android
    shell 真的反人类,现在我都用 python
    seki
        16
    seki  
       2018-01-28 12:57:56 +08:00   2
    shell 脚本藏的坑比较多,很容易写入危险的代码,比如不小心就让命令变成了 rm -rf ~ 之类的
    monnand
        17
    monnand  
       2018-01-28 13:01:39 +08:00 via Android
    我个人比较推荐这个教程:Classic Shell Scripting

    Google 一下可以找到 PDF 版。我当时是在 O'Reilly Media 的网站上买的电子版。电子版是 DRM free 的,当年打折好像十块钱好几本
    lee015
        18
    lee015  
       2018-01-28 13:05:37 +08:00 via Android
    天王盖地虎
    wweir
        19
    wweir  
       2018-01-28 13:13:29 +08:00
    shell 只是工具,会 shell 并不能让码农有内涵。
    让他们变得有内涵的是:知道什么时候适合用什么工具来解决问题。
    不过这会儿,他们已经不叫码农了,而叫高级工程师,或者架构师。
    aheadlead
        20
    aheadlead  
       2018-01-28 13:18:29 +08:00
    shell 真的坑…
    (刚把 shell 并发编程玩熟悉的路过……)
    hugee
        21
    hugee  
       2018-01-28 14:09:25 +08:00 via Android
    shell 哪里坑了?自己的疏忽大意让 shell 背锅?
    HuHui
        22
    HuHui  
       2018-01-28 14:14:49 +08:00
    工作当中的一点小乐趣:用更简单更合适的方式去解决某个问题。
    ETiV
        23
    ETiV  
       2018-01-28 14:18:05 +08:00 via iPhone
    会用工具和体验 unix 哲学

    都哲学了你说内涵不内涵
    Tink
        24
    Tink  
    PRO
       2018-01-28 14:20:52 +08:00 via iPhone
    python
    iwtbauh
        25
    iwtbauh  
       2018-01-28 14:32:47 +08:00 via Android
    There is more Unix-nature in one line of shell script than there is in ten thousand lines of C.
    Unix 更自然地认为,一行 shell 脚本胜过万行 C 代码
    gleymonkey
        26
    gleymonkey  
       2018-01-28 14:58:26 +08:00
    shell 只是适合简短的命令堆砌,写法上没有什么限制,只要会基本的 linux 就能走起。当然大神写的就另说了。
    0987363
        27
    0987363  
       2018-01-28 15:00:15 +08:00 via Android
    @bramblex perl 哪坑了。 明明是 shell python js 坑。。
    sammo
        28
    sammo  
       2018-01-28 16:01:23 +08:00 via Android
    不用 OOP 不用 duck typing 不用泛型时
    哪个语言都长相一样
    不,是我脸盲
    miketeam
        29
    miketeam  
    OP
       2018-01-28 16:02:22 +08:00 via iPhone
    真是喜欢争…
    vincenttone
        30
    vincenttone  
       2018-01-28 16:21:01 +08:00
    有这时间引战早学会 shell 了
    miketeam
        32
    miketeam  
    OP
       2018-01-28 17:25:43 +08:00
    @vincenttone 批评的是,我认了。下午花了 1 个小时学了基本的,但是感觉没有撒用啊,各位大佬出个问题,让我用 shell 解解。
    lfzyx
        33
    lfzyx  
       2018-01-28 17:42:13 +08:00   2
    shell 是一门非常糟糕的语言,里面语法之混乱,排版之无逻辑,让人看不下去,再加上有 sh,bash,csh,tcsh 这些解释器变体,建议 lz 不要入坑
    hsuan
        34
    hsuan  
       2018-01-28 17:49:40 +08:00
    @leemail #31 哈哈哈,这样的人居然有老婆!
    FradSer
        35
    FradSer  
       2018-01-28 17:51:15 +08:00
    @lfzyx 支持,还不如好好撸 Python
    wyk111wyk
        36
    wyk111wyk  
       2018-01-28 18:35:57 +08:00
    看书、健身、有一个漂亮的女朋友。
    williamx
        37
    williamx  
       2018-01-28 19:20:18 +08:00
    如果做程序员三年以内,那么赶紧学吧;如果做程序员超过了三年还不会写,转行管理岗位吧。
    xiaket
        38
    xiaket  
       2018-01-28 19:29:20 +08:00 via iPad
    推荐用 shell 的都不是因为喜欢 shell 语法而推荐的, Linux 命令只简单知道 20 个以下或者 grep/find/sed/awk 都不知道怎么用的,会不会 shell 语法不重要
    vincenttone
        40
    vincenttone  
       2018-01-29 11:11:40 +08:00
    @miketeam 楼主前端程序员?如果是前端程序员的话,学了 shell 确实用不到多少。
    但是如果楼主用 mac 或者 linux 环境的话,懂一些 shell 能节约不少时间,但是要注意 mac 和 linux 的命令有一些差异。
    miketeam
        41
    miketeam  
    OP
       2018-01-29 11:14:05 +08:00 via iPhone
    我是写前端的,就是画画图的那种
    MartinWu
        42
    MartinWu  
       2018-01-29 11:40:10 +08:00
    个人觉得,shell 一个用途一个脚本,不要试图去维护。
    wlsnx
        43
    wlsnx  
       2018-01-29 11:51:23 +08:00
    并不会,因为 shell 语法太差了
    ofblyt
        44
    ofblyt  
       2018-04-02 17:27:43 +08:00
    最近做 shell,真是有一种很神奇的感觉
    关于   帮助文档     自助推广系统     博客     API     FAQ     Solana     2539 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 34ms UTC 04:34 PVG 12:34 LAX 21:34 JFK 00:34
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86