スポンサーサイト

    上記の広告は1ヶ月以上更新のないブログに表示されています。
    新しい記事を書く事で広告が消せます。

    そこ変る?

    先日シェルプログラムで使用しているunixコマンドの実行ファイル(.exe)を新しいバージョンに変更しました。
    変更後に既存の自作シェルプログラムのテストをしていたら、いくつかのプログラムが動作しません...
    多少バージョンが上がっていたので覚悟はしていましたので、エラーを探していっても原因が???

    ディレクトリのファイルのリストをリダイレクトしてawkでファイル名称だけ抜き出しているのですが、そこが空になります???
    半日あーでもないこーでもないをした後に、そんなことは無いだろうとunixコマンドのlsの新旧比較してみたところ!!!

    フィールドの位置が変っていました!!!
    今までは9フィールド目にファイル名称があったのですが、新しいlsは8フィールド目にファイル名称が...
    ちなみに
    旧 ls
    v3.16
    新 ls
    v5.3.0
    一気に上げすぎました(汗
    そこ変るか~
    スポンサーサイト

    祝100日!

    弊社の自作データサーバーが、立ち上げてから本日で100日を迎えました!
    正確にはクラッシュしてからですが...
    OSの選定>ハードの選定>OSインストールを経てようやく運用開始したのが去年の3月ごろでしょうか?

    その後3ヶ月程で想定していたディスククラッシュではなく、OSの入ったUSBがクラッシュってね~(汗
    そのときは本当に冷や汗が出ました。(データは無事でした)
    やはりサーバーのミラーの必要性を痛切に感じました。
    たまたまデータは無事でしたが、全てのデータが消失となれば一大事です。
    今後のお題が出来ました。

    そんな障害を乗り越えて本日100日を迎えました!

    便利なコマンド

    sedと言うコマンドがあります
    このコマンドはファイルを読み込んで文字列の変換をしてくれます

    【例】
    ファイル名称 test
    %
    G90G00G54
    Z100.
    X0Y0
    G43.1Z#1H01
    M03S4000
    .
    .
    このNCデータのG54をG55に変更したい場合
    sed "s/G54/G55/" test > test2
    これでtest2にG55に変更されたNCデータが出来ます

    (注1)sedは基本的に(書き込み出来るオプションも有りますが)読み込んだ(編集元)ファイルには変更を加えませんのでリダイレクト(>)して別ファイルに吐き出します
    (注2)sedは置換する文字にマッチングすれば、全て書き換えてしまいます!意図しない文字が書き換えられる可能性もありますので注意が必要です

    ファイルが1本でしたら、メモ帳でファイルを開いて編集して。。。でも何とかなりますが
    ファイルの本数が多くなると編集も大変です
    ファイルを開かないで編集が出来るので作業時間の短縮になります

    先ほどのNCデータの回転数を書き換える場合も
    【例2】
    sed "s/S4000/S5000/" test > test3

    例1と例2を一緒に
    【例3】
    sed -e "s/S4000/S1000/" -e "s/G54/G55/" test > test4

    sedはさらに正規表現が扱えますので(これを考えるのが楽しい!)先ほどの意図しない文字にマッチングしてしまう場合正規表現を工夫する事で回避する事も出来ます
    詳しくはこちら

    例文はこちら

    バイブルはこちら

    sedのダウンロードはこちら※画面が開いて何もせずにしばらくするとダウンロード画面が開きます

    sedの.exeをインストール後にシステム環境変数に下記を追加します
    変数名 path
    変数値 C:\Program Files\GnuWin32\bin (システムの環境によりディレクトリが異なります、binのディレクトリのパスを通して下さい)

    コマンドプロンプト(dos窓)でsedと打ち込んで下記の文字が表示されればインストール完了です

    使用法: sed [オプション]... {スクリプト(他になければ)} [入力ファイル]...

    -n, --quiet, --silent
    suppress automatic printing of pattern space
    -e スクリプト, --expression=スクリプト
    実行するコマンドとしてスクリプトを追加
    -f スクリプト・ファイル, --file=スクリプト・ファイル
    実行するコマンドとしてスクリプト・ファイルの内容を追加
    -i[接尾辞], --in-place[=接尾辞]
    ファイルをその場で編集 (拡張子があれば、バックアップを作
    -b, --binary
    open files in binary mode (CR+LFs are not processed spe
    -c, --copy
    use copy instead of rename when shuffling files in -i m
    (avoids change of input file ownership)
    -l N, --line-length=N
    「l」コマンド用の行折返し長を指定
    --posix
    GNU拡張を全部禁止。
    -r, --regexp-extended
    スクリプトで拡張正規表現を使用。
    -s, --separate
    ファイルを一連の入力にせず、別々に処理。
    -u, --unbuffered
    入力ファイルから極小のデータを取り込み、
    ちょくちょく出力バッファーに掃出し
    --help この説明を表示して終了
    --version バージョン情報を表示して終了

    -e、--expression、-f、--fileオプションのどれもないと、オプション以外の
    最初の引数をsedスクリプトとして解釈します。残りの引数は全部、入力ファ
    イル名となります。入力ファイルの指定がないと、標準入力を読み込みます。

    GNU sed home page: .
    General help using GNU software: .

    viだな~やっぱり

    テキストエディタはノートパットがよく使われていますが
    うちでは、viが標準ですww

    vim-1.jpg

    と言いますのも、元々CADがUNIXベースでしたので自然とviを使っていました(emacsは無理でした
    ですから、windowsに端末が変わってもviは変わりません
    検索や置換、ファイル連結、正規表現、マーク等便利な機能が満載です!!
    文字のハイライトも素敵すぎます!

    実際先日購入したnotepcに一番最初にインスコしたのがviでした
    是非皆さん使ってみて下さい!使えば使うほどそのすばらしさが分かるはずです。

    cygwinインスコ!

    cygwinのバージョンも上がったので、そろそろ本腰入れて5軸の振り角度効率化に着手したい!

    5軸ヘッド(B軸・C軸)が任意の角度で位置決めした後
    次の任意の角度に位置決めする際の無駄のない位置決め角度を割り出したいのです
    (表現が難しい~)
    要は無駄を無くして加工時間を短くしたいのです

    この課題を解決するためにcygwinのtcsh上でシェルプログラムを書く予定です
    以前のtcshには若干のバグがありverupを待っていました~

    これで環境は揃ったので後は解決方法を考えるだけなのです

    これがずーーーーーーーっと考えているのですが
    非常に難解で。。。
    それを考えるのも楽しいのですが♪♪

    ささ早速cygwinをインストールしてみます。

    プロフィール

    cube

    Author:cube
    横浜で射出成形部品の検査治具を製作しています。

    主に自動車の内外装の検具が専門です。

    会社ではCADや機械達に遊んでもらっています。

    カレンダー

    04 ≪│2017/05│≫ 06
    - 1 2 3 4 5 6
    7 8 9 10 11 12 13
    14 15 16 17 18 19 20
    21 22 23 24 25 26 27
    28 29 30 31 - - -

    会社概要

    有限会社萩原木型製作所

    〒245-0017
    横浜市泉区下飯田町863-10

    TEL 045-802-8656
    FAX 045-801-0801

    E-mail
    hagiwara@hagiwara-kigata.com

    HP hagiwara-kigata.com

    最近の記事+コメント

    上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。