1 名前:デフォルトの名無しさん mailto:sage [2019/08/10(土) 23:17:50.64 ID:L+B8OP2P.net] シェルスクリプトに関する総合スレッドです。 全般 ・荒しは無視しましょう。 ・丁寧な姿勢を心掛けましょう。 ・ネチケット(死語)を意識しましょう。 ・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。 シェルスクリプト総合 その30 https://mevius.5ch.net/test/read.cgi/tech/1561989867/
66 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:05:17.46 ID:k+c7cOcw.net] ああ、やらかしたのをうやむやにするためにか...なるほど
67 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:06:30.10 ID:++HFlOfG.net] 確認取れた。やっぱり-nを改行なしと認識しないのは、bashの動きではなく Appleによるパッチみたいだ hints.macworld.com/article.php?story=20071106192548833 の下の方に書いてあるけど COMMAND_MODE=legacy /bin/sh -c 'echo -n hello' と書いたら-nを改行なしオプションと認識した(legacy 笑) この COMMAND_MODE は bashの機能ではなくAppleが用意したもの https://developer.apple.com/library/archive/releasenotes/Darwin/RN-Unix03Conformance/ macOS特有の動きだから、それを「bashでは」いうのはおかしいね。
68 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:09:29.22 ID:++HFlOfG.net] >>64 お前が俺にグダグダ言ってる間に答えを見つけたよ。 オマ環じゃなくて、macOS環境 お前は、bashは-nを認識しない(そのまま-nと出力される)と言っていたが、 それが間違いだとわかったよ。 bashは-nを改行なしオプションとして認識するのは正しい。(俺が今までLinuxで検証していたとおり) ただしAppleがビルドした改変版bashでは、 Single Unix Specificationに準拠するために POSIXでは規定されてない-nをそのまま出力されるようになってる。 まあこういう違いがあるから、やっぱりPOSIX準拠は大切だね。
69 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:10:38.51 ID:k+c7cOcw.net] >>67 俺のレスをよく読もうな。書いてからお前がイチャモンwつけたんだからな Macを持ってないとかならまだ許すが、自分で自らそのためにもPOSIXというひとつに挙げておいて、確認もせず、オマ環を自分で作ってそれも忘れ、 いろいろ忘れ、トンチキな妄想を吐いていたにもかかわらず、なかったことに&なにか知らんがwごまかしとしか思えないまったく真摯な態度が皆無なヤツです、いつもの高慢ちきは と(改めてw)証明wできたので、満足しとくわw
70 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:12:20.49 ID:k+c7cOcw.net] >>68 何を言いたいのかわからんが、現象は変わらない。そしてお前の間違いは変わらない な?こういうやつだな、やっぱり
71 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:14:12.80 ID:++HFlOfG.net] >>64 > macOS使ってるなら/bin/shがbashだとわかっているだろうに。なぜ/bin/shをbashにする環境作るのがとかのたまうのかわからん。 お前、macOSしかbash動く環境知らんのか? bashはGNUプロジェクトで作られたもので、GNU環境(例 Linux)が一番に確認すべき環境だろ bashでの動きの話をしてるんだから、Linuxで検証するのが一番手っ取り早い。macOSの話を持ち出したのは「お前が」「あとからだ」 Debinaでは/bin/shの実体はdashなんだから、/bin/shの実体がbashの場合の挙動を確認するには環境を作らなければいけない もっとも、macOSでは、/bin/shは/bin/bashへのシンボリックリンクではなく 本物のbashでもなく、Appleによる改変版bashだったわけだけど
72 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:16:41.36 ID:k+c7cOcw.net] >>71 トンチンカンすぎるな。めちゃくちゃ。最後だぞw安心しろww /bin/shの実体が/bin/bashになってる環境がなかったから時間がかかった Macあるやん、macOS使ってお前ほどの自称知っている人なら知ってるハズだろ だよ。なにをトンチンカンなことを。まあ、わかるよ、ごまかすのに必死なのは。アホらしい
73 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:18:47.82 ID:dSI5JGW8.net] 相手は神様なんだから敬ってやれよ > From: [36] デフォルトの名無しさん <sage> > Date: 2019/08/11(日) 16:10:55.15 ID:++HFlOfG > > 現実世界では私は神なのだ
74 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:19:19.67 ID:++HFlOfG.net] >>69 > 確認もせず、オマ環を自分で作ってそれも忘れ、 前スレ>>975 でコードが書かれてから お前は「macOS環境のbash」とは一言も言わず、 bashの場合としか言っておらず、 >>996 で書いた実行ログの中にapple-darwinという文字が含まれていたのを 俺が見つけたっていう事実を忘れてないか?w
75 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:19:54.10 ID:k+c7cOcw.net] >>73 なにそれww オモロイとおもって書いたのかな?マジだったらオモロイんだけど
76 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:20:19.99 ID:++HFlOfG.net] >>72 > /bin/shの実体が/bin/bashになってる環境がなかったから時間がかかった > Macあるやん、 Macでは/bin/shの実体は/bin/bashではない。バイナリが違ってる。 ってさっき書かなかったか?
77 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:21:29.72 ID:++HFlOfG.net] >>75 それはその数個上のレスを見ればわかるよ。 「現実世界では俺は優れたプログラマ」(といわれても証拠ないしなーw) とか言ってるやつがいたから、そいつに対するレス。
78 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:23:55.89 ID:k+c7cOcw.net] >>73 そのひとレスなのね。まあ、なんだ...まあ、いや、わからんwww まあ、いいや
79 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:24:54.08 ID:++HFlOfG.net] この話スレ建てる前に知りたかったなー。 macOS (10.14以前), は /bin/sh の実体が (Apple改変版)bash なので*特に*注意 って書き直したい
80 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 19:35:35.33 ID:++HFlOfG.net] これはひどいwww moriyoshi. はてなぶろぐ.com/entry/20090208/1234108045 > Leopard の「ターミナル」で、/bin/sh の echo -n がおかしい挙動を示
81 名前:します。 > > sh-3.2$ echo -n foo > -n foo > sh-3.2$ > 分ったこと: > > /bin/sh は bash だが、/bin/bash とは違うもの > which echo すると /bin/echo と言われるが、built-in のようだ > iTerm から起動すると echo -n はちゃんと動く > ターミナルで /bin/sh の echo は、iBCS2 コンパチとして動くのでしょうか? > google しても解決方法は分りませんでした。ご存知の方は教えて下さい。(_ _) > ... > > kzysk: なぜか iTerm は環境変数 COMMAND_MODE=legacy, ターミナルは unix2003 になっていて、 > その違いで sh 上の echo の動きがかわるらしいです。 [] [ここ壊れてます]
82 名前:デフォルトの名無しさん [2019/08/11(日) 22:27:57.25 ID:tjpar2Yg.net] やっぱりどこでも動くシェルスクリプトなんて妄想なんだねw
83 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 22:34:19.90 ID:owKtPG/2.net] POSIX準拠を意識してない未熟ものにとってはそうなんだろうな
84 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 22:39:31.82 ID:owKtPG/2.net] POSIX準拠を意識している者にとっては、-nが使えないとか 想定の範囲内だからね。yashとか使えないわけだし。 だから最初から-nを使うぐらいならprintfを使ってる。 POSIX準拠でコードを書いてる人にとっては何ら問題ないわけ
85 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 22:58:12.04 ID:tux8oNSc.net] あれだけアホ晒しても僕偉いww
86 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 23:02:56.27 ID:owKtPG/2.net] 俺が偉く見えてしまうのは、あんたの主観だから俺にはどうしようもないw
87 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 23:05:15.27 ID:tux8oNSc.net] >POSIX準拠を意識してない未熟もの 不特定多数が含まれるというのがわからないのね さすがあれだけアホ晒しても僕偉い人ww
88 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 23:08:19.13 ID:owKtPG/2.net] 不特定多数が含まれるからなんだっていうんだろう?
89 名前:デフォルトの名無しさん mailto:sage [2019/08/11(日) 23:10:58.42 ID:tux8oNSc.net] すげえよっ、さすがあれだけアホ晒しても僕偉い人ww脳の中身理解不能
90 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 00:45:59.42 ID:OLWOasI9.net] なんでスレ進んでたのかと思ったらまたはしゃいでたのか
91 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 00:50:54.61 ID:kdU0FwTT.net] 神様なんだろ。許してやれ (しかしネットは怖いな。やらかしたことがほぼ一生残る。)
92 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 00:56:58.46 ID:LRX4Utg1.net] なにやらかしたの?
93 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 01:16:22.35 ID:Mlg83N6h.net] よくわからん。揚げ足で騒いでるように見える。
94 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 01:48:53.53 ID:kdU0FwTT.net] 揚げ足というか、単に普通の失敗(理解不足)なんだけどな。 謝らないのが問題だった。 素直に謝罪しておけばよかったものを…。
95 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 02:03:12.93 ID:tYO0tRVG.net] 謝罪しろって韓国かよw
96 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 02:05:47.65 ID:U5E/4roV.net] Mac特有の挙動(UNIXの要求に合わせるためにAppleが独自で変更してる)なのに それに気づかないで、bashでは-nに対応してないって騒いでたんだっけ?
97 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 03:01:38.96 ID:vrbZPf3l.net] そう。挙句の果てに、Macでテストしてなかった お前が悪いとか言って荒らし始めた。
98 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 05:08:02.14 ID:kdU0FwTT.net] 自分に都合が悪くなるとすぐ韓国とかよく分からんこと持ちだして話を逸らすあたり, これは重症っすね……。
99 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 08:13:29.23 ID:TQ9KMPr7.net] これは人が離れて行くのも無理はないな ・自分の誤りを絶対に認めない ・人間関係は上下の主従関係のみで平等の概念がない どこかで見たことあるような...おや、誰か来たようだ
100 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 08:14:46.28 ID:d52ffprB.net] たしか前スレでも、質問してる側が下なんだから 回答する側に対してへりくだれ的なことを言ってたよな
101 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 08:16:14.37 ID:d52ffprB.net] これだな。平等の概念がない 609 自分:デフォルトの名無しさん[sage] 投稿日:2019/08/07(水) 12:45:25.69 ID:WK8NJ3/V [18/28] >>608 回答者のほうが偉いみたいな考え方。 質問者と回答者は対等です。 610 返信:デフォルトの名無しさん[] 投稿日:2019/08/07(水) 13:00:34.72 ID:9POPBXN5 [8/13] >>609 対等じゃないよ。金を出す側と受け取る側と同じだもの。同じわけがないじゃん。 君はなんでそんな現実と食い違う思想を持ってるんだ?それでは人とのトラブルになるだけで世の中渡っていけんだろう。
102 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 08:22:26.39 ID:TQ9KMPr7.net] あ、ひとつ忘れてた ・論点のすり替えが上手
103 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 08:38:45.76 ID:HKovfvTl.net] またこいつは朝からシェルスクリプト「ではない」話をしてんのか
104 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 11:05:57.03 ID:kdU0FwTT.net] そうせざるえないほど酷い人がいるからね。 このスレの住人は結構優しいんじゃないかな。 人格欠陥者を罵しったり無視することは簡単だけど, その欠点を皆で指摘してくれるなんてかなり貴重だと思う。 まあどうせ当の本人は自分に対する攻撃としか捉えず, 都合の悪いことには目を塞ぐ能力をフル活用して目を翥すんだろうが。
105 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 11:48:18.69 ID:7x51tVmW.net] bash 依存だけどこんな関数を作って使ってた事もあった function _join { local IFS="$1"; shift; echo "$*" } bash$ _join , {1..10} 1,2,3,4,5,6,7,8,9,10
106 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 11:51:12.48 ID:OLWOasI9.net] いくらID変えても同じ言動なのがいよね 欲を言えばコテを付けてくれれば処分しやすいんだけど
107 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 12:15:08.81 ID:kdU0FwTT.net] ていうか3スレくらい前からワッチョイ導入しようという話がチョイチョイ出てはいる。
108 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 15:40:50.17 ID:FEiQT6YL.net] >>104 それをbash依存にしないのは簡単だよ localの代わりにサブシェルを使えばいい _join { (IFS=$1; shift; echo "$*") } ちなみにlocalはPOSIX準拠じゃないけど、 local もしくは localと同等のことができるtypeset のどちらかが POSIX準拠シェルのすべてに(おそらく)搭載されてるから 2パターン作ることになるが、サブシェルを使わずに作ることも可能 面倒だからOLDIFSに対比させるのが楽だけどねw
109 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 16:10:50.92 ID:7x51tVmW.net] _join () (IFS=$1; shift; echo "$*") でいいんじゃね
110 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 16:15:47.05 ID:FEiQT6YL.net] >>108 その書式、使えないシェルがあるんだよ。
111 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 16:18:53.19 ID:7x51tVmW.net] IFSを使う場合はデリミタに1文字しか使えないので その後はこんな↓ふうに書き直した(けど最近は全く使うことがない) function _join { local d="$1"; shift; printf '%s' "$1"; shift; printf '%s' "${@/#/$d}"; echo; } $ _join '->' {{1..4},5,{4..1..-1}} 1->2->3->4->5->4->3->2->1
112 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 16:20:03.86 ID:FEiQT6YL.net] あ、でも今調べたら相当古いbashだけみたい。ならいいか
113 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 16:20:31.00 ID:VzSWusfF.net] shellcheck のような書き方を指導する奴で POSIX準拠の書き方でないところをチェックするツールでもあるのか? 滅茶苦茶詳しすぎる
114 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 16:37:37.51 ID:FEiQT6YL.net] >>110 それをbash依存なくするにはループだろうな たぶん誰でもわかると思うのでコードは省略w local変数使わなくても行けるかも >>112 shellcheck 以外だと使ったことがないけど shfmt ・・・でチェックできるのか知らない。使い方がよくわからないw shfmtという名前を忘れたのでぐぐったら bash依存チェックするツールがあったよw https://sourceforge.net/projects/checkbaskisms/ https://github.com/openstack/bashate 俺はもうだいたい覚えたね。POSIX準拠の書き方を調べたと言うよりも とあるシェルで動かない。なんでや?POSIX準拠じゃないんかい。の繰り返しで。 だからPOSIX準拠だけど、シェルのバグで動かないっていうのも頭に入ってる。
115 名前:デフォルトの名無しさん mailto:sage [2019/08/12(月) 16:53:21.75 ID:FEiQT6YL.net] あ、たぶん>>112 の疑問に答えて
116 名前:ないw なんで古いbashで動かないのかがわかったかと言うと 古いバージョンのシェルをビルドしたテスト環境を用意していて 単に実行して確認しただけの話。 [] [ここ壊れてます]
117 名前:デフォルトの名無しさん mailto:sage [2019/08/13(火) 12:23:48.45 ID:PvshuRsa.net] $ ksh -c 'echo $KSH_VERSION' Version AJM 93u+ 2012-08-01 これのAJMはなんだろう?と思ってググったけど、 コンパイル時のオプションってことでいいのかな? https://www.in-ulm.de/~mascheck/various/shells/ksh_versions.html After "Version" now there is a concatenation of letters indicating compile time options: A SHOPT_AUDIT /* keyboard logging */ B SHOPT_BASH /* bash compatibility code */ L SHOPT_ACCT /* accounting */ M SHOPT_MULTIBYTE /* multibyte character handling */ Jはこれ? J SHOPT_COSHELL /* job pools */
118 名前:デフォルトの名無しさん mailto:sage [2019/08/15(木) 23:08:43.05 ID:xN8IaB/K.net] 前スレでboshのビルドができないと言っていた人へ 2019-08-13版でビルドできるようになってます。 2019-06-13 OK 2019-07-15 NG 2019-07-22 NG 2019-08-13 OK
119 名前:デフォルトの名無しさん mailto:sage [2019/08/17(土) 20:53:09.43 ID:R5VCpMP+.net] POSIXで定義されてるbatchとかatとかって使ってる? 俺は可搬性を失なう覚悟でcron使ってるけど
120 名前:デフォルトの名無しさん mailto:sage [2019/08/17(土) 21:03:17.18 ID:He41kTu9.net] pythonで mycron.pyを書いた python さえ動けば
121 名前:デフォルトの名無しさん mailto:sage [2019/08/17(土) 21:23:22.11 ID:g4f/iCif.net] >>117 atは昔使ったことがあるけど、覚えてないレベル batchは使ったこと無いな。 POSIXなんだよな。なんでかPOSIXの範囲にこんなものを 含めちゃっていいのか?って気がしてるw
122 名前:デフォルトの名無しさん mailto:sage [2019/08/17(土) 21:26:52.13 ID:g4f/iCif.net] ん?cronはPOSIXじゃないけど、crontabはPOSIXなのか? これはコマンドは決まってるけど、それを実現しているものは決まってないってことなのかな?
123 名前:デフォルトの名無しさん mailto:sage [2019/08/17(土) 21:30:38.30 ID:R5VCpMP+.net] >>120 多分manと同じ感覚なんじゃないかな? manというコマンドは決まってるけどroffの仕様は決まっていない。
124 名前:デフォルトの名無しさん mailto:sage [2019/08/18(日) 13:02:29.86 ID:zqR8kD3Y.net] >>119 SCCSまで含めようという動きがあるんだから ジョブ管理くらいあってもおかしくないw それがPOSIXにほんとうに定めるべきコマンドなのか っていう疑念は拭えないけど。
125 名前:デフォルトの名無しさん mailto:sage [2019/08/18(日) 13:29:09.33 ID:KK6bG3/n.net] いつまでも完成しそうもない開発系?のツールなんかより dateとかsortとか基本形のコマンドのオプションを拡張すればいいのに だからいつまで経ってもMacのコマンドは貧弱でhomebrewでcoreutilsを入れなければいけなくなる LinuxをバンドルしたWSLは便利になった。
126 名前:デフォルトの名無しさん mailto:sage [2019/08/18(日) 19:00:47.29 ID:zqR8kD3Y.net] 単に拡張すりゃいいってもんじゃない。 どのシステムでも使えることを優先すべき。
127 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 03:40:41.24 ID:ZZoimR+D.net] >>123 > dateとかsortとか基本形のコマンドのオプションを拡張すればいいのに それな。 date +%s がPOSIX準拠じゃないとかびっくりやわw unix timeどうすりゃいいねん。
128 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 04:03:23.22 ID:M9mgefHn.net] >>124 拡張っていうか仕様の標準化だな POSIXScript2020 とかいう仕様を作って 各社に対応を促す。 新POSIXScript2020に準拠していれば どこでも同じように動く
129 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 07:34:11.92 ID:JcVwKxxm.net] >>126 それに対応することによる各社のメリットとは?
130 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 08:34:19.51 ID:xlQPwL5
] [ここ壊れてます]
131 名前:+.net mailto: ないだろJK [] [ここ壊れてます]
132 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 08:35:48.66 ID:xlQPwL5+.net] ていうか言語仕様の素早い更新・機能追加が好きならPython使えば? 過去互換性も同じくらい重視したいならC#-shell
133 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 09:33:40.73 ID:W8+ngSHm.net] >>127 なんのためにPOSIXが出来て、みんなそれに対応してると思ってるの?
134 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 09:48:50.15 ID:JcVwKxxm.net] >>130 当時と現在の状況の違いが理解できない理想主義の人?
135 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 09:51:47.61 ID:W/U4wDij.net] 現在ってまだPOSIX改定されてるでしょ? 歩みが遅いことを批判するのは正しいが、 そこにPOSIXはもういらないっていうのは、 POSIXの存在を否定してるよ。
136 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 09:54:30.67 ID:xlQPwL5+.net] >>132 POSIX要らないって少なくともこのスレでは誰も言ってないけど いったい誰と戦ってるの?
137 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 09:59:46.47 ID:W/U4wDij.net] >>127 と戦ってるんだけど? 結論としては、POSIXは必要で、POSIXは改定されてる。 新しいPOSIXに対応する各社のメリットがわからないなんてなw
138 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 10:13:25.39 ID:U/sDEGN5.net] /\___/\ / / ヽ ::: \ | (●), 、(●)、 | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ | ,,ノ(、_, )ヽ、,, | < まーたはじまった | ,;‐=‐ヽ .:::::| \_______ \ `ニニ´ .:::/ /`ー‐--‐‐―´´\
139 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 11:28:24.99 ID:xlQPwL5+.net] 文体がちょっと違うから危うく荒しに構うところだった。 いつものチガイか。
140 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 11:36:19.43 ID:JcVwKxxm.net] >>134 POSIX要らないとか一言も書いてないのだが なんか変な妄想にとらわれてる人なの?いつもの
141 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 11:40:44.54 ID:W/U4wDij.net] >>137 そっちじゃないよw 新しいPOSIXに対応するメリットがわからないんでしょ?
142 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 12:46:41.76 ID:IzREAmBO.net] シェル単体の交換可能性を担保したところで出来ることはたかが知れてる。 システムとして実用的なレベルまで規格拡張しないと使いものにならない。 現状のPOSIXは最低限のI/F仕様を規格化するだけの中途半端な規格だ。 将来的にネットワーク、ハードウェア管理、セキュリティなどシステムとしての仕様が標準化され、全てのシステムがそれに準拠するまでは、POSIXに固執する必要性は無いと言っていい。 もちろん、可能な範囲で可搬性を追求することは間違いではないと思うぞ。現状では限界があるということだ。
143 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 12:51:57.60 ID:4iryI+Qn.net] 現実として問題になってるのは、半ば当たり前のように書かれる Linuxで動くコマンドが、macOSで動かないことだよな ググって、なるほどこれでできるのか、って思ってもmacOSで動かないのは問題
144 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 12:52:53.15 ID:4iryI+Qn.net] >>139 POSIXはシェルだけを決めてるものじゃないよ。 コマンドとそのオプションも決めてる。
145 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 12:58:21.94 ID:IzREAmBO.net] >>141 シェル「だけ」とは言っていない。 ここはシェルスクリプトのスレだから、シェルについて言っている。 POSIXについては>>2 を読めば分かる。
146 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 13:02:42.41 ID:4iryI+Qn.net] >>142 主張がよくわからないんだけど 「シェル単体の交換可能性を担保したところで出来ることはたかが知れてる。」から、 現状のPOSIXは中途半端で、もっといいものにするために新しいPOSIXを 規格化するべきだって言ってるってことあってる?
147 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 13:23:29.26 ID:oONnFCD4.net] POSIXのような標準はそう簡単には変更できないだろ。バージョンによるになるから そして、ツールを作るのは大なり小なり思想があってやっているんで、言うようなできる最大のものに合わせるなんてなりっこない 文句なり言うなら、POSIXにではなくBSDに言う方が現実的だし、文句言うくらいな自分で実装してBSDに上げればいいだろう。上げても却下されるとかあるかもだがw 言っているのは単にWebで探した事例がLinuxでBSDだと動かないってのだけだもん
148 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 13:40:48.28 ID:4iryI+Qn.net] >>144 難しく考えすぎでしょ。すでにある実装を採用すればいいだけ 思想なんかは、既に実装されてる時点で問題ないということだし。 POSIXにではなくBSDに言う方が現実的というけどBSDの現状知ってる? すでにgreadlinkとかgtarとか結局GNU版を実装しちゃってるの。(その逆は聞かない) そういう二重開発をなくすためにも、今の実装(の一部)をPOSIXにしてしまうべきだと思うね
149 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 13:51:36.11 ID:oONnFCD4.net] >>145 その採用がだよ。やりとり見てみ。はいそうですねでは進んでないから それはいらないとかふつうにあるぞ。POSIXに限らず 何言ってるの?単にBSDにGNU coreutilsのパッケージがあって、それが入ることもあるってだけだよ。gって自分で付けて気づかないの?GNU coreutilsが入っているのが嫌という人も居るようだけど
150 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 13:53:39.09 ID:4iryI+Qn.net] >>146 > はいそうですねでは進んでないから ? 思想とかなんとか困難な道を乗り越えて見事、採用されたものを POSIXにも入れればいいだけって言ってるんだけど
151 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 14:01:04.44 ID:oONnFCD4.net] 何を言いたいのかさっぱり BSDも標準では入ってないぞ GNU coreutils は。何かそれを必要としたパッケージがあってそれにともないだろう パッケージは誰かが作ってそれなりに利用されるのならわりと簡単にだぞ?パッケージだからな。必要な人は入れるというだけの
152 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 17:39:47.54 ID:xlQPwL5+.net] ・POSIXに準拠することにはメリットがある ↑これは俺もそう思うけど(正しいかどうかは別にして) ・今のPOSIXでは不十分なので,規格を拡張して,各社にそれを追従するよう促すべきだ ↑これは違うと思う。POSIXの「不便さ」は「どこでも動く」ことの引き換えであることを忘れてはいけいない(ルポ風)
153 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 17:40:43.60 ID:xlQPwL5+.net] cat >>149 | sed -e 's/いけいない/いけない/'
154 名前:デフォルトの名無しさん [2019/08/19(月) 18:49:04.48 ID:0HwI7cO5.net] やっぱりどこでも動くシェルスクリプトなんて幻想なんだね。
155 名前:デフォルトの名無しさん [2019/08/19(月) 19:12:44.68 ID:peefgVfy.net] Write once, Bug anywhere.
156 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 19:43:03.92 ID:6nSAEgtv.net] >>149 でも「今のPOSIXでは不十分なので,規格を拡張して」は 遅いながらも今のPOSIX団体がやってることですよ? POSIX団体がやってることを批判するんですか?
157 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 20:19:55.37 ID:WiF5XT2w.net] bashで長いシェル書いてるといつもたくさんファイルを生成してしまうんだが上手い具合に生成しなくて済む方法ってある?
158 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 20:22:05.55 ID:oWmB5KZ/.net] >>154 たくさんファイルってどういうこと?
159 名前:蟻人間 mailto:sage [2019/08/19(月) 20:25:47.56 ID:GYeBbzEk.net] >>154 パイプ。リダイレクション。
160 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 20:28:19.59 ID:WiF5XT2w.net] >>155 どっかからデータをとってくる raw_file(最初) user_file user_and_id_file format_file(完成形) めっちゃテキトーに書いたけどこんな感じで4つぐらい作られてしまう rmで消すのって有りなのかな
161 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 20:29:18.05 ID:oWmB5KZ/.net] はぁ? と言われましても、 無駄なら無駄なところをなくせ、必要ならそうするしかないで終わるんだが? それじゃ全く何もわからないよ
162 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 20:33:15.52 ID:WiF5XT2w.net] >>156 参考になりました。ベストアンサーあげます
163 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 20:50:25.65 ID:JcVwKxxm.net] >>149 おれは、促すまではいいと思うが、こんな所での妄想レベルの機能なんか 促されたからってそうホイホイ実装しないだろうと思うんだな
164 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 20:53:38.13 ID:PiISpjsD.net] >>160 人の話ちゃんと聞こうぜ? 誰も妄想レベルの機能を言っちゃいない。 既に実装済みの機能をPOSIXで標準化しようって話をしてる。
165 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 20:58:54.83 ID:QrnBNgWe.net] pasteで処理の結果をくっつける方法ってありますか? 処理A、処理B、処理Cの計3つでファイルを作成せずにくっつけたいです。
166 名前:デフォルトの名無しさん mailto:sage [2019/08/19(月) 21:02:40.84 ID:WV8MsfnG.net] Xxx <(Yyy) <(Zzz) こんな感じのがあったような?