与えられたファイルから関数の入力/出力を見つけるためのシェルスクリプトを書く方法

与えられたファイルから関数の入力/出力を見つけるためのシェルスクリプトを書く方法

指定されたファイルのすべての関数名と入力/出力を知らせるシェルスクリプトを作成する必要があります。

たとえば、2つの関数を持つ次のファイルを考えてみましょう。各関数の入力と出力はそれぞれgetvalueとputvalueを使用します。

static int function1()

{    
getvalue(session,"inp1",extra);    
getvalue(session,"inp2",extra);

------other code----------

putValue(session,"output1",extra);    
putValue(session,"output2",extra);

}

static int function2()   
{
getvalue(session,"inp3",extra);    
getvalue(session,"inp4",extra);

------other code----------

putValue(session,"output3",extra);   
putValue(session,"output4",extra);   
}

「Static int」キーワードを使用して関数名を検索し、関数の入力/出力を使用して関数内で「getvalue」キーワードと「putvalue」キーワードを検索できるようにスクリプトを作成するにはどうすればよいですか。

出力は次の形式でなければなりません。

Function Name :Function1
Input of Function :   
inp1    
inp2
Output Of Function:    
output1    
output2


Function Name :Function2
Input Of Function:    
inp3    
inp4

Output Of Function:    
output3  
output4

ベストアンサー1

あなたの質問は100%明確ではありません。ただし、inpを出力に置き換える方法を尋ねる場合は、awkを使用して実行できます。

print "inp1" | awk 'sub(/inp/,"output")'

おすすめ記事