想要将文本追加到文件 test.txt 里,于是使用 sudo echo xxx >> test.txt 命令,结果出现了权限不够。
尴尬,搜索问题解决吧:
$ sudo echo xxx >> test.txt
bash: test.txt 权限不够
问题原因:
出现此问题的原因是文件 test.txt 是 root 用户所有,普通用户无写权限,而 sudo 命令只让 echo 命令有 root 权限,而重定向命令 >> 不具有该权限,或者说 root 权限没有“传递”到重定向命令 >>,因此也就无法将输出文本重定向到 root 用户的文件 test.txt。
解决办法:
使用 bash -c 命令。该命令可以让 bash 运行整条字符串命令,前加 sudo 使得整条命令运行时具有 root 权限。
sudo bash -c 'echo xxx >> test.txt'
1、文章版权归作者所有,未经允许请勿转载。
2、本站所有文章,如无特殊说明或标注,均为本站原创发布。任何在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们邮箱:526009505@qq.com进行处理。
3、咨询请联系QQ:526009505
2、本站所有文章,如无特殊说明或标注,均为本站原创发布。任何在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们邮箱:526009505@qq.com进行处理。
3、咨询请联系QQ:526009505
你可能也喜欢
- ♥ Linux下VI命令的用法简析07/14
- ♥ Linux常用命令大全04/11
- ♥ Linux创建和释放swap分区的教程06/18
- ♥ Linux笔记:Linux常用命令,适合收藏04/11
- ♥ 修改ubuntu系统的默认启动顺序的方法04/11
- ♥ Centos系统使用yum安装Java开发环境的教程05/07