X



トップページLinux
1002コメント311KB
デスクトップでLinuxが普及する訳ないと思った時 11
■ このスレッドは過去ログ倉庫に格納されています
0612login:Penguin
垢版 |
2019/04/13(土) 15:36:57.37ID:XVm/+Pqu
ブラックホールの画像を撮ったチームの
ドキュメンタリーをBSプレミアムで見た

どっかの学者のノートPCがちらりと映ったら
明らかにUbuntuのunityだったね

まあバカが寄ってたかって
Linuxデスクトップの
悪口を並べたところで
あの学者の知性を考えたら
虚しいだけだよな

成仏しろ
0613login:Penguin
垢版 |
2019/04/13(土) 15:43:05.19ID:FSqZI8q3
知性と品性ってかならずしも両立しないんだよな。
粗野で卑な性格のLinuxユーザが多いのがよくわかってしまうね。
0614login:Penguin
垢版 |
2019/04/13(土) 15:46:58.12ID:BUoOe6/E
あの学者とやらにに知性はあるかもしれないが、犬厨は知性を持たないPC業界の中二病患者だぞw
0615login:Penguin
垢版 |
2019/04/13(土) 16:10:27.71ID:YXXSm1JY
内部か外部かを気にしてスクリプト書いたこと無いけどね。
0616login:Penguin
垢版 |
2019/04/13(土) 16:43:21.13ID:/AYYdjyq
プロセス生成のオーバーヘッドは無視できないくらい大きいぞ。
0617login:Penguin
垢版 |
2019/04/13(土) 16:48:40.51ID:YXXSm1JY
大体スクリプトでそんな大きなもの書かんだろ。
0618login:Penguin
垢版 |
2019/04/13(土) 18:03:14.29ID:qHlFwNwI
>>611
× シェルのビルトインコマンドだけじゃなければシェルスクリプトとは言えない
○ 外部コマンド呼び出しだけじゃシェルスクリプトとは言えない

シェルのビルトインコマンでも、シェルスクリプトの文法でもいいから
外部コマンド呼び出し "以外" をしろってこと
外部コマンド呼び出し "だけ" ならバッチファイルと変わらん
0619login:Penguin
垢版 |
2019/04/13(土) 18:22:26.82ID:YXXSm1JY
外部だけでも動くんだもん。
0620login:Penguin
垢版 |
2019/04/13(土) 18:38:23.24ID:YXXSm1JY
#!/bin/bash
echo "hello world"
0621login:Penguin
垢版 |
2019/04/13(土) 18:44:26.36ID:YukExFn/
>>611
無論シェルスクリプトでシェル変数セットしてexpectのtclで読んでる。
ループ制御とかログの出力expect実行結果判断なんかはshの方が便利だし。
シェルスクリプトから一行でexpect起動してるならシェルスクリプトにする必要ないと俺も思うよ。

で、ps使いの人に聞きたいのだがエクセルファイル読み込んでオブジェクトにしてpsスクリプト内でセル読み書きとかプロパティ変更してエクセルファイルに書き出す事とか出来る?
0623login:Penguin
垢版 |
2019/04/13(土) 18:50:24.41ID:YXXSm1JY
シェルスクリプト(バッチファイル)でcsvを弄うほうがそれっぽい。
0624login:Penguin
垢版 |
2019/04/13(土) 19:01:32.68ID:YukExFn/
>>622
ありがとう。だいたいわかったよ。saveasがあるならloadもありそうだし。
0625login:Penguin
垢版 |
2019/04/13(土) 19:02:22.34ID:Iwrbot4V
てかPowerShellってシェルのパチモンに
COMのインスタンスの生成とそのアクセスの提供とGCを積んだだけみたいなもんでしょ
.NETってライブラリ群としての規模は相当でかいけど、構造自体は単純だぞ

COMかじってればC++でなんちゃって.NETライクな動作をするアプリを自作できるだろ
それを言語レベルにまで食い込ませたのがC++/CLI (ry
0626login:Penguin
垢版 |
2019/04/13(土) 19:03:32.62ID:YukExFn/
>>623
csvはperlで読み書きしてるよ。
0627login:Penguin
垢版 |
2019/04/13(土) 19:05:07.32ID:UOLhFVjP
それをコンパイラ使わずにスクリプトでやれることに意味があるんじゃないか
0628login:Penguin
垢版 |
2019/04/13(土) 19:16:41.00ID:Iwrbot4V
意味の有無に言及したつもりはなくって、プログラミング言語に見えなくもない理由について語っただけ
csvの読み書きとかshからperl起動しなくってもMicrosoft.VisualBasic.FileIOの中の
TextFieldParserとか使えば一発だしな

そもそもFormも使えるからシェルからPython起動してウィンドウのサブルーチンっぽく
ダイアログの入力結果を云々して戻り値をシェルで判定、なんて事をしなくても済むし
PowerShellのそういうとこはそれはそれで有用だよな
0629login:Penguin
垢版 |
2019/04/13(土) 19:21:39.16ID:YukExFn/
ああ、そうだね。
windowsで使われる全てのオブジェクトがpsからアクセスできるなら素晴らしいね。
0630login:Penguin
垢版 |
2019/04/13(土) 19:41:02.96ID:qHlFwNwI
>>625
> .NETってライブラリ群としての規模は相当でかいけど、構造自体は単純だぞ

素晴らしいことだな。単純な構造で、大きな事ができるって。
0631login:Penguin
垢版 |
2019/04/13(土) 19:43:31.36ID:Iwrbot4V
>>629
特殊な引数とかの受け取りを要求してくる様なイベントハンドラが必須とかでもない限り、
インスタンスは何でも作れるし実行環境を限定する様なのでもなきゃ何でも動くよ

一度やった事があるけど、HttpListenerまで実装できて(動いて)笑った事がある

>>630
思ったんだけど、bashとかもやろうと思えばできるよな
そういう動きないんかね?PowerShell coreで先越されてるし意味ないか?
0633login:Penguin
垢版 |
2019/04/13(土) 20:21:14.78ID:YXXSm1JY
cat data.csv |
0634login:Penguin
垢版 |
2019/04/13(土) 20:23:34.43ID:YXXSm1JY
cat data.csv | awk
0635login:Penguin
垢版 |
2019/04/13(土) 20:33:03.51ID:YukExFn/
>>631
.netでできる事ならpsでも効率云々を度外視すれば同じ事が出来るって事だね。httplistenerとかテスト用なら十分そうだし。
0636login:Penguin
垢版 |
2019/04/13(土) 20:37:31.27ID:YXXSm1JY
cat data.csv | awk -F ',' -v 'OFS=,' '{print $2,$1}'
0637login:Penguin
垢版 |
2019/04/13(土) 21:34:20.81ID:0ZXsWXdg
デスクトップ関係ない
0641login:Penguin
垢版 |
2019/04/13(土) 23:17:13.73ID:YXXSm1JY
>>638
五行ぐらいなら手で修正せえよ。
2,000は2000でもええのか2,000でなければならんのかによっても違うし、セパレータ変更してもええのかダメなのかにもよるし…。
cは何列目に置くのかにもよるし…。
0642login:Penguin
垢版 |
2019/04/13(土) 23:25:43.55ID:YXXSm1JY
とりあえずsedかなんかで"を消して、
あとはずれたところを手作業かなぁ。
0643login:Penguin
垢版 |
2019/04/13(土) 23:31:21.71ID:YXXSm1JY
無理に一般化するのは出来ないことは無いかもしれんが無駄だろうな。
ただ手作業の手間を減らすことはできると思う。
0644login:Penguin
垢版 |
2019/04/13(土) 23:35:53.05ID:YXXSm1JY
"消したらあかんのか…。
2,000の"は消さなあかんようやけど
"2と000"と言うデータなのか2000でええのか2,000でなければならないのか?
0645login:Penguin
垢版 |
2019/04/13(土) 23:37:11.21ID:YXXSm1JY
つーかこのデータどうしてほしいの?
0646login:Penguin
垢版 |
2019/04/13(土) 23:41:48.85ID:YXXSm1JY
まずこのデータが壊れたものなのかどうかだな。
0647login:Penguin
垢版 |
2019/04/13(土) 23:45:46.35ID:YXXSm1JY
まぁスクリプト通したいなら先に修正したほうがええね。
0648login:Penguin
垢版 |
2019/04/13(土) 23:51:08.27ID:YXXSm1JY
壊れていないとすれば
"c,,こうか,"c,か,,"cこうじゃないのか。
0649login:Penguin
垢版 |
2019/04/13(土) 23:56:12.15ID:YXXSm1JY
>>636に通した結果ですけど
A,a
B,b
,"c
,c
C,c"
0650login:Penguin
垢版 |
2019/04/14(日) 00:03:20.16ID:YhbT5x9g
cat data.csv | awk -F ',' -v 'OFS=,' '{print $3,$2,$1}'
でこうなりました。

1,A,a
"2,B,b
,,"c
,,c
3 ,C,c"
0651login:Penguin
垢版 |
2019/04/14(日) 00:04:07.57ID:sSM/KrIQ
CSVは複雑な形式だから、awkなんかで処理しようと死ぬ

>>645
そうだね。全ての項目の後ろに@でもつけて以下のようにしてみて。

a@,A@,1@
b@,B@,"2,000@"
"c
c
c@",C@,3@
0652login:Penguin
垢版 |
2019/04/14(日) 00:04:46.81ID:sSM/KrIQ
awkなんかで処理しようとすると死ぬ
0653login:Penguin
垢版 |
2019/04/14(日) 00:11:12.21ID:kg8pvW5X
三列と決めてるのは>>638だからなぁ。
0654login:Penguin
垢版 |
2019/04/14(日) 00:13:49.22ID:kg8pvW5X
三列のcsvなのに四列目の000"が存在しているのが間違いだな。
0655login:Penguin
垢版 |
2019/04/14(日) 00:14:46.27ID:sSM/KrIQ
それはCSVの仕様(RFC4180)です。
0656login:Penguin
垢版 |
2019/04/14(日) 00:24:22.36ID:kg8pvW5X
7. フィールドがダブルクォーテーションで囲まれている場合、フィールドの値に含まれるダブルクォーテーションは、
その直前にひとつダブルクォーテーションを付加して、エスケープしなければならない。

よく知らないけどこの辺ですか?
0658login:Penguin
垢版 |
2019/04/14(日) 00:33:06.47ID:kg8pvW5X
はみ出たやつは手作業で…。
0659旅人びとうさぎ
垢版 |
2019/04/14(日) 00:48:27.74ID:THpTYFU9
ただのウサギなんですが、0埋め
もしくは、-埋めではダメなんですか?
0660login:Penguin
垢版 |
2019/04/14(日) 01:01:13.83ID:kg8pvW5X
sed -n "/[^,]*,[^,]*,[^,]*,[^,]*/p"
とか…。
0661login:Penguin
垢版 |
2019/04/14(日) 02:54:53.89ID:FNHMy2Rc
awkも結局シェルのプロセス外のシーケンサーの一種だけどな

で、デスクトップと何の関係が?
0662login:Penguin
垢版 |
2019/04/14(日) 02:59:54.75ID:kg8pvW5X
256文字すべてを含むフィールドが存在できる以上
セパレータ文字をエスケープする文字の存在は不可能?
0663login:Penguin
垢版 |
2019/04/14(日) 03:20:41.34ID:kg8pvW5X
"エスケープ文字" "セパレータ文字" の並びがデータだと言われたらダメだな。
0664login:Penguin
垢版 |
2019/04/14(日) 03:32:34.97ID:kg8pvW5X
長く複雑なセパレータ文字列を使えば確率は下がるかもしれない。
0666login:Penguin
垢版 |
2019/04/14(日) 07:36:09.29ID:KEQ0Qh2C
デスクトップとして普及しないのはスレタイと関係ない事を延々とレスする基地外が跋扈する世界だからさ。
0667login:Penguin
垢版 |
2019/04/14(日) 07:52:57.60ID:kg8pvW5X
よくわからないけどこんなものが出来ました。
cat data.csv | sed 's%.*,"\([^",]*,[^",]*\)".*%"\1"%g' | grep '"[^"]*"'
0668login:Penguin
垢版 |
2019/04/14(日) 09:21:49.40ID:kg8pvW5X
長く複雑なセパレータ文字列案
"いやがらせすんな"
0669login:Penguin
垢版 |
2019/04/14(日) 09:23:58.72ID:kg8pvW5X
>>638
結局これをどうすればいいの?
0670login:Penguin
垢版 |
2019/04/14(日) 09:28:55.80ID:kg8pvW5X
ああ>>651か…。
0671login:Penguin
垢版 |
2019/04/14(日) 09:31:57.00ID:kg8pvW5X
>>651
三行目と四行目はいらないのかね?
全ての項目にはならないけど?
0672login:Penguin
垢版 |
2019/04/14(日) 09:59:35.19ID:kg8pvW5X
設問の不備ですかねぇ、出題者様ぁ。

まぁ、>>638をデータとしてそのまま使うのはあまりおすすめしませんねぇ。
修正してから加工したほうがよろしいんじゃないですか、お客さん。
0673login:Penguin
垢版 |
2019/04/14(日) 10:33:50.50ID:kg8pvW5X
教育関係者かね?
既知の問題だと思うけど、そいつらの相手はただの知恵比べでつまらんよ。
教室のテストじゃないからググるというカンニングでてきそう。
まぁ、>>638の時点でどうしてほしいか書いてない時点で間抜け確定なんだよ。
そんなやつの相手をしても無駄といえば無駄だったな。
教育関係者のアホなところはなんとしてでも生徒より上に立とうとすることだろうな。
そんな無駄な努力をするより未知の問題に立ち向かう姿勢を見せた方が生徒に慕われると思うよ。
0674login:Penguin
垢版 |
2019/04/14(日) 10:37:38.96ID:kg8pvW5X
俺もcsvはほとんど知らなかったからなぁ、
いい勉強にはなったかもしれんが

csvを使って何かするということはこの先ほとんど無いだろうな。
アホな教育者のマウントに付き合わされるだけか…。
0675login:Penguin
垢版 |
2019/04/14(日) 10:56:24.45ID:Oyg1mkTz
  σ < 教師は、制度上、未熟だから学びに来ている生徒に囲まれている
 (V)    1学科に特化して毎日対峙しているのだから
  ||     新しく学ぶことでは、当然、未熟な生徒など簡単に捻れる
       だから、増長しやすい
       それなのに上に立とうとうろたえる程度だったら
       そりゃ悲惨な現実が展開することになるな、ワワワワワ
0676login:Penguin
垢版 |
2019/04/14(日) 11:09:21.49ID:kg8pvW5X
無駄な努力で無駄な知識を得させる、
我が国のリソースを食いつぶすのはやめてくれ。
0677login:Penguin
垢版 |
2019/04/14(日) 11:10:49.78ID:kg8pvW5X
ここで問題です、

学校は必要かどうか?
0678login:Penguin
垢版 |
2019/04/14(日) 11:24:52.90ID:kg8pvW5X
第二問
最適なcsvのセパレータは?
0679login:Penguin
垢版 |
2019/04/14(日) 12:47:49.85ID:Oyg1mkTz
  σ < 用途に最適化したフィルターを用意し
 (V)    用途に合うセパレーターを採用すればよい
  ||     しかし、エスケープシーケンスは必要になってくるだろう
       フィルターを記述するのはお好みの言語でどうぞ
       Linuxは良い練習台になります
0680login:Penguin
垢版 |
2019/04/14(日) 13:41:20.55ID:KEQ0Qh2C
comma-separated values
のファイルに「最適なセパレータは?」とか言われてもな。
0681login:Penguin
垢版 |
2019/04/14(日) 13:56:16.29ID:Oyg1mkTz
  σ < ワロタ
 (V)    目的に合うデーター形式のテキストを選べばよいだけ
  ||
0682login:Penguin
垢版 |
2019/04/14(日) 14:00:05.57ID:sSM/KrIQ
>>673
なに一人で空回りしてんのさw

なにかしてほしいんじゃねーよ。
CSVなんて簡単なんて抜かしてるから、CSVを編集するなら
専用のツールを使わないとだめってことを指摘しただけだ。

世の中のCSVなんて、エクセルからの出力ばかりなんだから
シェルスクリプトやawkで簡単だぜーとか言ってると痛い目を見るぞ。
0683login:Penguin
垢版 |
2019/04/14(日) 14:02:02.77ID:OMecn1y2
もうMDBファイルでいいよ。
0685login:Penguin
垢版 |
2019/04/14(日) 14:57:12.66ID:TGWNcCG2
>>678
>>638 は真っ当な CSV 形式で、セパレータは , です。
, や改行を含めた場合、"" で囲まれます。改行も1つのデータなので削ってはいけません。
0686login:Penguin
垢版 |
2019/04/14(日) 15:26:49.31ID:FNHMy2Rc
ところがPowerShellはcsv如き外のプロセスに頼らずに処理できる、と
0687login:Penguin
垢版 |
2019/04/14(日) 15:37:32.89ID:FNHMy2Rc
あー、コマンドレットとかそんな話じゃないからな
https://www.aruse.net/entry/2018/09/08/162030
あんなもんすぐ限界が来るから直接TextFieldParserの類を使った方がいい

そもそもcsv如きPowerShellなら自前のパーサで処理したとこで大した負担にもならんだろうが
StreamReader辺りで1行づつ読んで"の囲いとエスケープを処理しながら"の範囲外の,で分割して
テーブルで返す、なんてその辺に無駄に転がりまくってて自前で書いても何の自慢にもならん
0690login:Penguin
垢版 |
2019/04/14(日) 17:27:34.58ID:mbyB72Ft
>>689

木下よ

話に加わりたくて必死だなw
0691login:Penguin
垢版 |
2019/04/14(日) 17:31:57.05ID:kg8pvW5X
>>682
設問の不備は?

以下のようにしてみてって書いてるやろ。
0692login:Penguin
垢版 |
2019/04/14(日) 17:37:16.04ID:kg8pvW5X
まぁ、お前の部下でも生徒でもないんで義務はないけどな。
0693login:Penguin
垢版 |
2019/04/14(日) 17:51:00.46ID:kg8pvW5X
ああそういうことか…。
0694login:Penguin
垢版 |
2019/04/14(日) 17:53:49.76ID:kg8pvW5X
わざわざそんな項目にするのはただの間抜けだな。
0695login:Penguin
垢版 |
2019/04/14(日) 17:55:18.95ID:kg8pvW5X
改行を含めるとかセパレート文字使うとかアホとしか思えんよ。
0696login:Penguin
垢版 |
2019/04/14(日) 17:57:26.09ID:kg8pvW5X
で、それに真面目に対応するMSはすごいけど
間抜けなデータの処理自慢するとか…。
0697login:Penguin
垢版 |
2019/04/14(日) 18:06:10.95ID:utjIHXLX
これがおいらの正体ですwww
得意技は荒らしです


  σ < おいら荒らしですwww ほんとテーノーですwwwww               
 (V)
  ||  http://warotateno.web.fc2.com/warotawarota.html
0698login:Penguin
垢版 |
2019/04/14(日) 18:11:45.58ID:Uoa9FR4r
>>688
2枚目の上の方にあるアイコンってなに?
0699login:Penguin
垢版 |
2019/04/14(日) 18:27:20.98ID:kg8pvW5X
理論上使えるけどほんとにそれ使ってそれは便利なの?
ってもん実際に使ってるの?
データを扱うファイル形式としての性格上改行文字含めるとか…。
もしエスケープ使ってでも使ってしまっている場合やはり出来うる限り修正すべきだろう。

長い注釈とか想定してるのかね?
0700login:Penguin
垢版 |
2019/04/14(日) 18:37:27.56ID:kg8pvW5X
ふーん。
0701login:Penguin
垢版 |
2019/04/14(日) 21:09:54.52ID:7VdhBezH
>>620
Bashでしかできないシェルスクリプトまだなの?
能無しのクズ
0702login:Penguin
垢版 |
2019/04/14(日) 22:00:02.78ID:w8aayK7s
bashでしか出来ないスクリプトってshebangを/bin/bashから/bin/shに変更すると動かなくスクリプトでいいの?
bashで拡張された構文で書けばいいと思うけど。
0703login:Penguin
垢版 |
2019/04/14(日) 22:01:42.48ID:ixpIiuEv
それができてないからな…
0704login:Penguin
垢版 |
2019/04/14(日) 22:03:30.71ID:w8aayK7s
>>699
csvで改行付き文字列ってだけで使うでしょ。
0706login:Penguin
垢版 |
2019/04/14(日) 22:22:51.61ID:kg8pvW5X
cat data.csv | tr "\n" "#" | sed -e 's%,%@,%g' -e 's%#%@#%g' -e 's%"@%@"%g' -e 's%\([^"]"[^"]*\)@,\(.*\)%\1,\2%g' | tr "#" "\n" | sed '/,/! s%@%%'

条件は一応クリアだけどねぇ…。
0707login:Penguin
垢版 |
2019/04/14(日) 22:24:33.75ID:w8aayK7s
#!/bin/bash
str='hogefuga'
if [[ $str =~ fuga ]] ;
then
echo 'attayo'
fi

とか/bin/shとかだと動かんと思うけど。
0708login:Penguin
垢版 |
2019/04/14(日) 22:25:04.19ID:kg8pvW5X
目の前のブツはどうにかした程度なんで…。
0709login:Penguin
垢版 |
2019/04/14(日) 22:30:33.28ID:kg8pvW5X
[[: not found
0710login:Penguin
垢版 |
2019/04/14(日) 22:34:41.61ID:w8aayK7s
あらま。残念。
0711login:Penguin
垢版 |
2019/04/14(日) 23:06:03.02ID:sSM/KrIQ
>>702
> bashでしか出来ないスクリプトってshebangを/bin/bashから/bin/shに変更すると動かなくスクリプトでいいの?

普通に考えれば、bash以外だと出来ない or 困難だけど、
bashなら簡単にできるって意味だろw
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況