V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
monkindey
V2EX  ›  macOS

大家有没有一些常用的 mac 命令呢

  •  
  •   monkindey · 2016-09-18 14:12:20 +08:00 · 6070 次点击
    这是一个创建于 3018 天前的主题,其中的信息可能已经有所发展或是发生改变。

    优化自己的工作流,简单实用的Mac命令的呢?

    第 1 条附言  ·  2016-09-18 22:44:46 +08:00
    真心感谢所有 V 友们的答疑解惑
    56 条回复    2016-09-26 10:23:48 +08:00
    Xrong
        1
    Xrong  
       2016-09-18 14:25:36 +08:00
    open .
    mcfog
        2
    mcfog  
       2016-09-18 14:26:23 +08:00
    仅限 mac 的话,只能想到 pbcopy pbpaste 了,或者 open ?

    其它能想到的都是 linux/mac 都有的
    viko16
        3
    viko16  
       2016-09-18 14:27:56 +08:00   ❤️ 2
    open -a {xxx 程序} {xxx 文件}
    newbieo0O
        4
    newbieo0O  
       2016-09-18 14:29:26 +08:00
    买本鸟哥私房菜学学。
    coymail
        5
    coymail  
       2016-09-18 14:37:11 +08:00 via iPhone   ❤️ 2
    推荐 Macintosh Terminal Pocket Guide 这本书
    sammo
        6
    sammo  
       2016-09-18 14:41:27 +08:00 via iPhone
    常用的都做成了 alias...
    realwangyibo
        7
    realwangyibo  
       2016-09-18 14:47:14 +08:00
    vim xxx.txt
    git add .
    git commit
    git push
    git checkout
    git rm -rf --cached xxx
    brew install xxx
    brew upgrade
    cmake ..
    make
    mkdir -p xxx
    rm -rf xxx
    Tink
        8
    Tink  
       2016-09-18 15:01:40 +08:00 via iPhone
    dot_clean
    endoffight
        9
    endoffight  
       2016-09-18 15:57:39 +08:00
    zsh + oh-my-zsh
    clearc
        10
    clearc  
       2016-09-18 16:16:18 +08:00 via iPhone
    brew doctor....
    hei1000
        11
    hei1000  
       2016-09-18 16:19:41 +08:00
    常用的创建 alias 简化啊
    TimePPT
        12
    TimePPT  
       2016-09-18 16:39:11 +08:00
    sudo periodic daily weekly monthly
    thekoc
        13
    thekoc  
       2016-09-18 17:13:58 +08:00
    mdfind
    L3ve
        14
    L3ve  
       2016-09-18 17:20:31 +08:00
    alias server='python -m SimpleHTTPServer'
    alias show='defaults write com.apple.finder AppleShowAllFiles -bool true && killall Finder'
    alias hidden='defaults write com.apple.finder AppleShowAllFiles -bool false && killall Finder'
    alias port='port(){ lsof -i tcp:$@;};port $1'
    initdrv
        15
    initdrv  
       2016-09-18 17:25:02 +08:00
    @L3ve 感觉很厉害啊,也挺方便吧。
    Valyrian
        16
    Valyrian  
       2016-09-18 17:27:33 +08:00 via iPhone
    @L3ve 为啥一个是 show 另一个是 hidden 。。
    ynyounuo
        17
    ynyounuo  
       2016-09-18 17:29:33 +08:00   ❤️ 1
    ynyounuo
        18
    ynyounuo  
       2016-09-18 17:30:30 +08:00
    @Valyrian show hidden files 的自动联想吧 - - 没想到写 hide
    williamx
        19
    williamx  
       2016-09-18 18:12:41 +08:00
    @mcfog 好奇什么情况下用 pbcopy pbpaste ?自从知道这两个命令以来一直都没有机会用。 iterm2 ,好像用鼠标更方便。
    MaiCong
        20
    MaiCong  
       2016-09-18 18:17:25 +08:00 via iPhone
    open
    git
    svn
    cd
    rm
    monkindey
        21
    monkindey  
    OP
       2016-09-18 18:42:00 +08:00
    @coymail 有对应的电子书么?
    coymail
        22
    coymail  
       2016-09-18 18:53:41 +08:00 via iPhone
    @monkindey 嗯,就是一本电子书
    ynyounuo
        23
    ynyounuo  
       2016-09-18 18:54:43 +08:00
    @monkindey
    http://shop.oreilly.com/product/0636920025382.do
    Ebook $12.99

    如果你要盗版,那可能本论坛不允许。
    XiaoxiaoPu
        24
    XiaoxiaoPu  
       2016-09-18 18:59:56 +08:00
    sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist && sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist

    刷新 DNS 缓存, Mac 的 DNS 各种蜜汁 bug 。
    tension
        25
    tension  
       2016-09-18 19:03:18 +08:00
    ssh
    yggd
        26
    yggd  
       2016-09-18 19:11:39 +08:00
    rm -rf ***
    curl wttr.in/city
    IgniteWhite
        27
    IgniteWhite  
       2016-09-18 19:50:00 +08:00
    @yggd 第二条之前有人介绍过,不过第一条最好不过了
    lazywen
        28
    lazywen  
       2016-09-18 19:59:31 +08:00
    pbpaste > ~/a
    cat ~/a | pbcopy
    monkindey
        29
    monkindey  
    OP
       2016-09-18 20:19:16 +08:00
    @ynyounuo 十分感谢
    Hello1995
        30
    Hello1995  
       2016-09-18 20:24:24 +08:00 via iPhone
    alias cp='rm -rf'(开个玩笑)

    来个非玩笑,大概是最近最常用的:
    alias play='you-get -p mpv'
    cyr1l
        31
    cyr1l  
       2016-09-18 21:33:25 +08:00 via iPhone   ❤️ 1
    @williamx 比如复制密钥的时候, cat idsa.pub | pbcopy , 不用动鼠标
    limbo0
        32
    limbo0  
       2016-09-18 21:36:19 +08:00
    alias e 'vim'
    alias proxy 'proxychains4'
    alias rm "trash-put"
    alias http 'python -m SimpleHTTPServer'
    isbase
        33
    isbase  
       2016-09-18 22:27:26 +08:00 via Android
    crystone
        34
    crystone  
       2016-09-18 23:18:38 +08:00
    学习了
    miketeam
        35
    miketeam  
       2016-09-18 23:33:39 +08:00 via iPhone
    学习了
    mcfog
        36
    mcfog  
       2016-09-19 00:19:34 +08:00 via Android
    @williamx 都是配合管道为主,比如 copy 当前目录的 git 的 commit hash ,比如配合 /dev/random 直接 copy 随机盐什么的, pbpaste 更厉害一点,可以省去写临时文件,比如 copy 一些文本后 pbpaste|grep 啊, sort|uniq 啊, xarg 啊等等
    leoli
        37
    leoli  
       2016-09-19 00:46:34 +08:00
    chflags hidden/nohidden [file]

    我经常用这个来隐藏我的毛片。。。
    sutra
        38
    sutra  
       2016-09-19 09:45:00 +08:00
    从 .gitconfig 复制一段来:

    [alias]
    co = checkout
    br = branch
    ci = commit
    st = status
    unstage = reset HEAD --
    last = log -1 HEAD
    lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
    sutra
        39
    sutra  
       2016-09-19 09:45:55 +08:00
    ~/bin/eclipse:

    #!/bin/sh
    open -a /Applications/Eclipse.app $@ 2>/dev/null 1>&2 &
    sutra
        40
    sutra  
       2016-09-19 09:47:47 +08:00
    $ cat ~/bin/check-wifi.sh
    #!/bin/sh
    PATH=/sbin:/usr/sbin:/bin:/usr/bin
    log="/tmp/check-wifi.log"
    hardwareport="en0"
    IP="192.168.0.1"
    SSIDs="TP-LINK_EAF8 TP-LINK_5G_EAF8"
    SSID=`networksetup -getairportnetwork en0 | awk -F": " '{print $2}'`

    test "${SSIDs#*$SSID}" != "${SSIDs}"
    if [ "${?}" = "0" ]; then
    echo "[`date`] Checking connectivity of ${SSID}" >> "${log}"

    ping -c 3 "${IP}" >> "${log}" 2>&1
    if [ "${?}" = "2" ]; then
    networksetup -setairportpower "${hardwareport}" off; \
    networksetup -setairportpower "${hardwareport}" on
    echo "[`date`] Turned Wi-Fi (${hardwareport}) Off/On" >> "${log}"
    fi
    fi
    sutra
        41
    sutra  
       2016-09-19 09:50:24 +08:00
    常用的东西我都作成脚本放在 ~/bin/ 目录里了,我是常年开着 Terminal ,基本都用 Terminal 启动软件。

    这里贴代码,怎么才能支持缩进呢?
    ibolee
        42
    ibolee  
       2016-09-19 10:15:31 +08:00
    atom .
    YORYOR
        43
    YORYOR  
       2016-09-19 10:16:59 +08:00
    ctrl + r
    sammo
        44
    sammo  
       2016-09-19 10:20:45 +08:00   ❤️ 1
    #
    # terminal & Finder interaction
    # Seize the Finder path into shell 用于 指挥当前 Finder 目录到 终端里。等同于 "从这里启动终端"
    # o 和 cdf 是相反的操作
    alias o="open ."
    cdf(){
    cd "$(osascript -e 'tell app "Finder" to POSIX path of (insertion location as alias)')"
    }
    #
    chuhemiao
        45
    chuhemiao  
       2016-09-19 11:50:57 +08:00
    @Hello1995 请问下 via iPhone 是怎么显示的? via 的浏览器吗?
    JohnSmith
        46
    JohnSmith  
       2016-09-19 11:55:32 +08:00
    mac update;noti
    tianshilei1992
        47
    tianshilei1992  
       2016-09-19 12:03:01 +08:00
    @chuhemiao 直接用 Safari 回复就可以了
    lxian2
        48
    lxian2  
       2016-09-19 13:01:21 +08:00
    Exin
        49
    Exin  
       2016-09-19 13:05:32 +08:00 via Android
    say
    装一些语音包
    特好玩
    ozOGen
        50
    ozOGen  
       2016-09-19 14:18:06 +08:00
    rm -rf /

    不知道能运行吗 😢
    zcl0621
        51
    zcl0621  
       2016-09-19 15:54:56 +08:00
    @ozOGen 少个 sudo
    monkindey
        52
    monkindey  
    OP
       2016-09-19 16:27:30 +08:00
    @ozOGen @zcl0621 我去,你们这个不是坑别人么?不知道你们是不是有意的,大家不要试这个哈
    ozOGen
        53
    ozOGen  
       2016-09-19 16:52:04 +08:00
    @monkindey 只能说坑小白吧....当年我做小白的时候也被人引导 sudo rm -rf /usr/local 坑过....
    monkindey
        54
    monkindey  
    OP
       2016-09-19 17:23:59 +08:00
    @ozOGen 但是希望不要恶性循环哈,是吧
    ys0290
        55
    ys0290  
       2016-09-19 17:44:23 +08:00 via iPhone
    @zcl0621 debian 不需要
    sutra
        56
    sutra  
       2016-09-26 10:23:48 +08:00
    在 Mac OS X 上用 SetFile 命令将文件夹从 Finder 中隐藏起来
    比如把 HOME 目录下的 “ VirtualBox VMs ” 目录在 Finder 里不显示:
    $ SetFile -a V ~/VirtualBox\ VMs
    如果要显示出来,则把参数中的大写的 V 改成小写的 v :
    $ SetFile -a v ~/VirtualBox\ VMs
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5662 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 02:56 · PVG 10:56 · LAX 18:56 · JFK 21:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.