文件里面 shell 命令怎么把结果原本的重定向到另外一个文件里?

我知道在普通的终端(terminal)我输入head-10test.txt>output但我要是在一个文件里写上这个就不管用了。另外如果用echo`head-10test... 我知道在普通的终端(terminal) 我输入 head -10 test.txt > output
但我要是在一个文件里 写上这个就不管用了。
另外 如果用 echo `head -10 test.txt` 》output 本来是10行的东西, 重定向之后就变成1行,我想保持原貌该怎么办。不胜感激。
展开
 我来答
魔魇魔殇
推荐于2017-10-01
知道答主
回答量:7
采纳率:0%
帮助的人:10.2万
展开全部
问题1:
在脚本里和在终端运行的你那个命令的效果是一样的;不生效的原因很可能是你运行脚本的环境变量不同,解决方法①把脚本放到和test.txt一个文件夹下运行;②脚本中test.txt和output使用绝对路径。

问题2:
要输出10行,那么直接head -10 test.txt >> output就可以了呗,为什么要echo一下?
如果你非要echo,那么你要把空格替换为换行
echo `head -10 text.txt` | sed 's/ /\n/g' >> output
但是为什么要多此一举呢?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式