3

我想通过命令执行一个脚本。SNMP所以对于我在文件夹下配置OID的那个脚本。snmpd.conf/etc/snmp

我的脚本看起来工作只是重定向"text"output.txt文件,然后打印在控制台上执行的脚本。

#!/usr/bin/ksh 

Input_path="$HOME/input.txt"     
Out_Path="$HOME/output.txt"     

#I have to take the line_num from output.txt which is actually number of line present in output.txt 
line_num=`wc -l <$out` 

#after that i need to take that line from INPUT file
line=`head -$a $Input_path | tail -1 ` 

#i need to uppend data to 1 kb for that i am using typset command
typeset -L1024 line 

#I am increasing value of a
a=`expr $a + 1` 

#same i am echo in file so at this point number of line in file will increase by 1
echo $a >> $Out_Path

#this is the final output which i want .
echo -e "$line\n"

输出

如果我从节点使用 snmpwalkcommand ...1

snmpwalk 命令的输出是

一个

更新后的 output.txt 文件为 1 2

snmpwalk 命令的输出是

C

更新后的 output.txt 文件为 1 2 3 4

snmpwalk 命令的输出是

C

更新后的 output.txt 文件为 1 2 3 4 5

这意味着我得到 a,c,e ...但我需要 a,b,c,d,e

我正在执行这种类型的处理,因为 output.txt 中的数据超过 1 kb,并且我无法在 snmpget 命令中获取超过 1 kb 的记录,这就是我执行此过程以获取整个数据的原因。

4

1 回答 1

0

a) 尝试将“shebang”行 ( #!/bin/sh) 作为脚本的第一行

b)尝试为您的文件设置完整路径,例如echo "text" > /tmp/output.txt

c)确保您写入的路径可由 snmpd 的 UID 写入(/tmp/通常是)

于 2012-12-12T05:30:39.990 回答