请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

Mac下zsh, sed 反斜线与-i的报错提示

老师,您好,两个问题都是在Mac下操作的,是zsh
图片描述

/etc/passwd文件我已经放到Desktop桌面上了,那么我像您视频中操作一样,比如我要删除passwd第一行, sed -i ‘1d’ passwd, 它提示‘extra characters at the end of p command’
接着第二个问题: sed -i /\sbin/nologin/p’ passwd ,也是参照您视频中讲的,仍然报出错了和上面一个问题同样的错误
希望老师指点:)

正在回答

2回答

酷田 2019-08-28 23:42:36

OS X有这个问题的,可以显示的在-i后面加一个空白符号,比如这样,sed -i ‘’ ‘1d’ passwd,其他后面的命令都这样执行!最后我还是建议学习shell在你的mac上安装一个虚拟化软件,然后在里面安装一个centos或者redhat,然后使用这个来联系……因为几乎所有的企业服务器都是使用centos或者redhat,另外一个原因就是mac有部分地方和shell不一样,这个对初学者是很大干扰

1 回复 有任何疑惑可以回复我~
赵佳子彧 2021-10-29 22:40:33

sed -i ‘1d’ passwd在Mac中使用:
第一种方式:sed -i "" ‘1d’ passwd,
第二种方式:sed -i -e ‘1d’ passwd(推荐)
还有后面sed使用编辑命令a,在匹配到的行后追加内容,Mac如下格式:
在a\ 换行后追加内容,如下

~ % sed -i -e '/love/a\ 
quote> This is a love' sed.txt

Mac OS系统虽然也是类Linux的一个unix拓展,使用大体上没啥区别就是极个别使用方式比较有意思,哈哈哈😂  

1 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信