在Linux环境中 echo $get_resoult|cut -c 39-|awk -v RS='[ \n]' 'NR%5{printf $0 " ";next}1;END{if(NR%5)print ""}' 得出以下结果 1 2 3 4 5 6 7 8 9 10 ---------- * * * * * 但是在Unix系统中执行的话得出 1 2 3 4 5 6 7 8 9 10 * * * * * 在unix系统中怎么进行处理也能得到换行效果呢?
by huangdazhu - Shell - 2014-01-09 09:41:04 阅读(2128) 回复(10)
在Linux环境中 echo $get_resoult|cut -c 39-|awk -v RS='[ \n]' 'NR%5{printf $0 " ";next}1;END{if(NR%5)print ""}' 得出以下结果 1 2 3 4 5 6 7 8 9 10 ---------- * * * * * 但是在Unix系统中执行的话得出 1 2 3 4 5 6 7 8 9 10 * * * * * 在unix系统中怎么进行处理也能得到换行效果呢?
比如一个list.txt文件内容是 1 2 3 4 a b c d for脚本读取文件时,我想是一行一行的读入,每次循环读取一行像第一次是1 2 3 4,第二次是a b c d 但是我这样写 for i in "$(< ./list.txt)" do echo $i echo 11111 done 得到的结合是 1 11111 2 11111 3 11111 4 11111 a 11111 b 11111 c 11111 d 11111 怎么解决呢
我做了一个sql脚本,如下: var=$(mysql -u root -proot123 -e "select * from test.resource \G") echo $var echo $var|awk '{print $2}' 结果是: pid process processstat Time cpu memory vmemory result 29828 test S 00:00:00 0 0 13812 248 33024 test S 00:00:00 0 0 13812 248 37814 test S 00:00:00 0 0 13812 248 38752 test S 00:00:00 0 0 13812 248 process 并没有按我预想的,是按表格方式的三行信息,请问怎么能按...
HI, 我用的是mac os,具体freebasd我没试, 主要是这样一个问题, 具个说 1.sh[code]#!/bin/bash echo "abc" echo "abc" echo "abc"[/code]输出正常 abc abc abc 2.sh[code]#!/bin/bash t=`./1.sh` echo $t[/code]输出不正常,为 abc abc abc 即把1.sh返回内容中的换行都变成了回车,但是在linux下是正常的,请问这是什么问题。
我的文本都是 abcd saas\ efgh sgkgh\ ijk gfhf 我用awk -F " " '{print $2}' 进行shell处理的时候会自动看成3行进行处理,怎样才能把他们看成1行?
echo \'asdfasdf \\r\\n 1234\'\r\n\r\n我想要的结果是 \r\n asdfasdf \r\n 1234\r\n但总是做不到,请帮忙了,谢谢