2016-05-13 15 views
0

topコマンドのラッパーを作成し、より有用な情報を私に与える情報を置き換えようとしています。具体的には、スワップコマンドの情報で与えられたメモリ使用情報を置き換えたいと思います。SEDを使用して特定の行をコマンド出力に置換する

#!/usr/bin/csh 

# files and directories 
# /user/bin for who, cut, sort, ps, sed, cat, rm, mv, grep, echo, hostname, swap 
set ubin="/usr/bin" 

# tmp files and directory 
set dir="/tmp" 
set TopData=$dir/"Topdata" 
set SwapData=$dir/"SwapData" 

while (1 == 1) 
     swap -sh > $SwapData 
     $ubin/top -b |sed -e "[email protected]*@[email protected]" > $TopData 
     $ubin/clear 
     $ubin/cat $TopData 
     $ubin/sleep 2 
end 

私が情報を保持するために一時ファイルとしてSwapDataを使用しようとしていたが、$ SwapDataだけではないデータは明らかに、ファイルへのパスを提供し、この例では:ここ

は、私が持っているコードです。私はswapコマンドをsed(またはその問題のコマンド)引数の中で直接使うことはできません。

答えて

0

あなたのループ内でこれを試してみてください:

SwapData=`swap -sh` 

はまた、なぜあなたはcshに書いていますか?

関連する問題