cshスクリプトで配列の最大値と最小値

AkaiKKRでコバルトのc/a その2ではcshのシェルスクリプトの中で、配列の中の最大値と最小値を探す方法が分からないので、常に昇順または降順に並んでいると仮定してスクリプトを書きました。

今回は、その点の補足として awk を使った配列の中で最大値と最小値を探すスクリプトを書きました。

#!/bin/csh -f

set LIST=( 1.2 3.00 4.3 2.1 1 3.2 )
set MAX=${LIST[1]}
set MIN=${LIST[1]}

foreach NUM ( ${LIST} )
set MAX=`echo ${NUM} ${MAX} | awk '{if ($1>=$2) print $1; else print $2}'`
set MIN=`echo ${NUM} ${MIN} | awk '{if ($1<=$2) print $1; else print $2}'`
end

echo ${MAX} ${MIN}


...たぶんもっとシンプルな回答があるのだろうとは思いますが。

関連エントリ




参考文献/使用機器




フィードバック



にほんブログ村 その他趣味ブログ 電子工作へ

 ↑ 電子工作ブログランキング参加中です。1クリックお願いします。


コメント・トラックバックも歓迎です。 ↓      


 ↓ この記事が面白かった方は「拍手」をお願いします。

tag: シェルスクリプト awk 

n行ごとに改行を挿入するシェルスクリプト

Gnuplotで3次元プロットを行うためには、入力するデータのファイルに改行が入っていないとエラーが出ます。
そこでn行ごとに改行を挿入するシェルスクリプトinsbreak.shを書きました。

#!/bin/bash

tmpfile=$(mktemp)
cat ${1} | awk '{print $0} NR%'${2}'==0 {printf "\n"}' > ${tmpfile}
mv ${tmpfile} ${1}


使い方は以下のようにコマンドラインに打ち込みます。

./insbreak.sh hoge.dat 5



上記の例ではhoge.datにたいして5行ごとに改行が入ります。
仮にhoge.datが以下の内容だったとします。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20


するとhoge.datは以下のように上書きされます。

1
2
3
4
5

6
7
8
9
10

11
12
13
14
15

16
17
18
19
20



本当は安全な一時ファイルの削除の仕方とかもあるようですが、今回はここまで。(どうせこのスクリプトは自分では使わないし)
結果を上書きしてしまうので、もし使うならファイルのバックアップは取っておいた方がいいです。

関連エントリ




参考URL




付録


このエントリで使用したシェルスクリプトを添付します。ファイル名末尾の".txt"を削除して、"_"を"."に変更すれば使えるはずです。(参考:ねがてぃぶろぐの付録)


フィードバック



にほんブログ村 その他趣味ブログ 電子工作へ

 ↑ 電子工作ブログランキング参加中です。1クリックお願いします。


コメント・トラックバックも歓迎です。 ↓      


 ↓ この記事が面白かった方は「拍手」をお願いします。

tag: cygwin シェルスクリプト awk 

FC2カウンター
カテゴリ
ユーザータグ

LTspiceAkaiKKRmachikaneyamaScilabKKRPSoC強磁性OPアンプPICCPAecaljモンテカルロ解析常微分方程式odeトランジスタ状態密度DOSインターフェース定電流PDS5022スイッチング回路半導体シェルスクリプト乱数レベルシフト分散関係HP6632AI2C可変抵抗トランジスタ技術ブレッドボード温度解析R6452A反強磁性確率論バンドギャップセミナー数値積分熱設計非線形方程式ソルババンド構造絶縁偏微分方程式ISO-I2CLM358マフィンティン半径フォトカプラシュミットトリガカオスLED三端子レギュレータGW近似A/Dコンバータ発振回路PC817C直流動作点解析USBTL431数値微分アナログスイッチカレントミラー74HC4053サーボ量子力学単振り子チョッパアンプ補間2ちゃんねる開発環境bzqltyFFT電子負荷LDAイジング模型BSch基本並進ベクトルブラべ格子パラメトリック解析標準ロジックアセンブラ繰り返し六方最密充填構造SMPコバルトewidthFET仮想結晶近似QSGW不規則合金VCAMaximaGGA熱伝導cygwinスレーターポーリング曲線キュリー温度スイッチト・キャパシタ失敗談ランダムウォークgfortran抵抗相対論位相図スピン軌道相互作用VESTA状態方程式TLP621ラプラス方程式TLP552条件分岐NE555LM555TLP521マントル詰め回路MCUテスタFXA-7020ZR三角波過渡解析ガイガー管自動計測QNAPUPSWriter509ダイヤモンドデータロガー格子比熱熱力学起電力awkブラウン運動スーパーセルUbuntu差し込みグラフ第一原理計算フェルミ面fsolveCIFxcrysden最大値最小値ubuntu最適化平均場近似OpenMP井戸型ポテンシャル固有値問題シュレディンガー方程式TeX2SC1815結晶磁気異方性OPA2277フラクタルFSM固定スピンモーメントc/a非線型方程式ソルバgnuplot全エネルギーfcc初期値マンデルブロ集合縮退正規分布interp1ウィグナーザイツ胞L10構造multiplotフィルタ面心立方構造PGAハーフメタル二相共存ZnOウルツ鉱構造BaOSIC重積分磁気モーメント電荷密度化学反応クーロン散乱岩塩構造CapSenseノコギリ波デバイ模型キーボード半金属フォノンquantumESPRESSOルチル構造スワップ領域リジッドバンド模型edelt合金Realforce軸ラベルグラフの分割凡例線種シンボルMAS830LCK1026LMC662PIC16F785トランス関数フィッティングトラックボールPC等価回路モデルヒストグラムパラメータ・モデル不規則局所モーメント最小二乗法TS-112TS-110直流解析ExcelGimp円周率片対数グラフ両対数グラフspecx.f疎行列三次元ifort文字列不純物問題P-10等高線ジバニャン方程式ヒストグラム確率論マテリアルデザイン入出力境界条件陰解法AACircuit熱拡散方程式HiLAPWMBEEAGLE連立一次方程式ナイキスト線図負帰還安定性Crank-Nicolson法日本語

最新コメント
リンク

にほんブログ村 その他趣味ブログ 電子工作へ