sed 命令在 Linux 下备份是可选项,然而在 mac 下是必选项,不然会报错。比如我在用的时候:sed -i "s/需要匹配的字符串/替换的字符串/g" 在 Linux 下可行,在 mac 下需要写成:sed -i '' "s/需要匹配的字符串/替换的字符串/g" or sed -i '.bak' "s/需要匹配的字符串/替换的字符串/g",也就是说必须要备份才可以。(可以选择留空)
在 Linux 下用 sed 匹配替换换行符或者制表符是没有问题的,但在 mac 下就不成功,需要一些办法来委婉的解决掉,比如 。(并不通用,视情况而定)
让你的终端更有趣——一句话心情
这几天没事的时候我就在想,平时的学习生活中,脑子里总会时不时冒出一些奇奇怪怪的点子,或是几句感慨,几句抱怨,或是你那是有点奔放的小心情。
我的Github: https://github.com/jeasonstudio
获取我们应该找个法子把它记录下来。
于是我写了一个十几行的 shell 脚本,每当我打开终端的时候,它就像整点的闹钟如约而至。文章最后,我会分享几个我在 macOS 上踩到的坑。先看 DEMO:
打开的时候是很弱智的提示语,然后你把你脑子里想的 SHIT 打上去,注意,oneLineFeeling只有一行的机会哦~
然后他会自动把内容提交 GIT 仓库。十秒钟,完成。再看看 GitHub 仓库里。
这就是最终效果,积累到一定程度的时候就可以做一些数据分析了。接着看一下源码:
代码很简单,看注释就可以懂得,有心的朋友可以沿着这个思路搞一搞。
下面说一下 MacOS 和 Linux 下 shell 命令的不同之处。
sed 命令在 Linux 下备份是可选项,然而在 mac 下是必选项,不然会报错。比如我在用的时候:sed -i "s/需要匹配的字符串/替换的字符串/g" 在 Linux 下可行,在 mac 下需要写成:sed -i '' "s/需要匹配的字符串/替换的字符串/g" or sed -i '.bak' "s/需要匹配的字符串/替换的字符串/g",也就是说必须要备份才可以。(可以选择留空)
在 Linux 下用 sed 匹配替换换行符或者制表符是没有问题的,但在 mac 下就不成功,需要一些办法来委婉的解决掉,比如
。(并不通用,视情况而定)