如何从文件中获取特定行中的特定值?

时间:2013-10-11 18:07:05

标签: shell

我有一个代码

for i in $MYCOMP/orderedips/*
do
  if test $old -lt $crazyfunction

如何让shell检查每个文件并取出文件第二行的内容然后拉出以句点分隔的第三个和第四个值来放入$ crazyfunction变量?

即:file1

blahblahblah
145.384.32.14

任何可能的提示?

2 个答案:

答案 0 :(得分:0)

如果您想要第二行,可以head -2获取前两行,然后tail -1获取最后一行:

SECOND_LINE=$(head -2 $FILE | tail -1)

要按期间拆分,请参阅cut命令:

echo $STRING | cut -d. -f3,4

答案 1 :(得分:0)

  

如何让shell检查每个文件并取出内容   文件的第二行然后拉出第三个和第四个值   用句点分隔来把$ crazy函数变量放入?

使用的解决方案:

for file in "$MYCOMP/orderedips/"*
    crazyfunction="$(awk -F '.' 'NR==2{print $3"."$4;exit}' "$file")"
    echo "$crazyfunction"
done