0

切り取る列とともに「最後の」コマンドから切り取るようにユーザーに促したい。また、「tr」を使用して、空白のすべての違いを修正したいと思います。これは私が持っているコードです:

echo -n "What rows and columns would you like to cut: "
read num_int
read num_row
read num_list
last $num_int
cut -f $num_row
tr -d $num_list

コマンドラインから実行するとプロンプトが表示されるので、Enterキーを押してから、数字を入力して切り取ります。次に、もう一度Enterキーを押すと、画面に出力されるが実行されたスクリプトから抜け出さない情報のリストが表示されます。このスクリプトを設定するためのより良い方法はありますか?画面にエコーされる内容のサンプルデータを次に示します。

slater   pts/2        78.189.121.247   Sat Sep  1 23:21 - 23:27  (00:05)    
slater   pts/3        77.189.121.247   Sat Sep  1 23:09 - 23:21  (00:12)    
slater   pts/2        76.189.121.247   Sat Sep  1 22:59 - 23:09  (00:10)    
slater   pts/2        74.189.121.247   Sat Sep  1 22:51 - 22:56  (00:05)    
pint     pts/2        74.189.121.247   Sat Sep  1 22:49 - 22:51  (00:01)    
terry    pts/2        74-119-247-134.r Sat Sep  1 19:08 - 19:09  (00:00)    
4

2 に答える 2

2

これを行うことはあなたのニーズに合っていますか?

read -p "What row and column integers would you like to cut >>> " col row
 last | awk -v col=$col -v row=$row 'NR==row{print $col}'
于 2012-10-22T22:15:59.313 に答える
0

あなたがここで何をしようとしているのか、私にはよくわかりません。しかし、これらのコマンドを相互にパイプして、相互の出力で動作するようにしたいと確信しています。

last | cut -f $num_row | tr -d $num_list

last $num_intおそらくあなたが望むことをしません。last引数としてユーザー名が必要です。出力の最後の$num_int行を取得するには、次のことを試してくださいtail(または多分head):

last | tail -n $num_int | cut -f $num_row | tr -d $num_list

tr私が特に混乱しているコマンド。あなたはそれで何をしようとしていますか?

于 2012-10-22T22:13:07.543 に答える