分页: 1 / 1

使用脚本,输出为空文件

发表于 : 2010-08-13 17:03
renxinzhi
脚本中的命令没错:

代码: 全选

hpang@hpang-desktop:~/vasp/sigma$ grep "volume" OUTCAR | tail -1 | awk '{printf "%12.4f \n", $5 }'
    350.0400 
hpang@hpang-desktop:~/vasp/sigma$ grep "TOTEN" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }'
  230.033342 
hpang@hpang-desktop:~/vasp/sigma$ grep "EENTRO" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }'
   -0.034324 
hpang@hpang-desktop:~/vasp/sigma$ 
但是把命令放到脚本中输出就出问题了,而且只新建了一个空的out文件:

代码: 全选

hpang@hpang-desktop:~/vasp/sigma$ ./test
./test: 2: %12.6f \n,: not found
./test: 3: %12.6f \n,: not found
./test: 4: %12.4f \n,: not found
hpang@hpang-desktop:~/vasp/sigma$ 
这是脚本内容:
#!/bin/sh
TS='grep "EENTRO" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }''
E='grep "TOTEN" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }''
V='grep "volume" OUTCAR | tail -1 | awk '{printf "%12.4f \n", $5 }''
echo $TS $V $E >>out

Re: 使用脚本,输出为空文件

发表于 : 2010-08-13 17:13
link_01
#!/bin/sh
TS='grep "EENTRO" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }''
E='grep "TOTEN" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }''
V='grep "volume" OUTCAR | tail -1 | awk '{printf "%12.4f \n", $5 }''
echo $TS $V $E >>out

代码: 全选

TS=`grep "EENTRO" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }'`
E=`grep "TOTEN" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }'`
V=`grep "volume" OUTCAR | tail -1 | awk '{printf "%12.4f \n", $5 }'`
echo "$TS $V $E ">>out
grep -E '(EENTRO|TOTEN|volume)' OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }

Re: 使用脚本,输出为空文件

发表于 : 2010-08-13 17:28
trigger
反引号 :em05

Re: 使用脚本,输出为空文件

发表于 : 2010-08-13 18:15
renxinzhi
link_01 写了:
#!/bin/sh
TS='grep "EENTRO" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }''
E='grep "TOTEN" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }''
V='grep "volume" OUTCAR | tail -1 | awk '{printf "%12.4f \n", $5 }''
echo $TS $V $E >>out

代码: 全选

TS=`grep "EENTRO" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }'`
E=`grep "TOTEN" OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }'`
V=`grep "volume" OUTCAR | tail -1 | awk '{printf "%12.4f \n", $5 }'`
echo "$TS $V $E ">>out
grep -E '(EENTRO|TOTEN|volume)' OUTCAR | tail -1 | awk '{printf "%12.6f \n", $5 }
这点把我整的好苦