シェルスクリプト総合 その31

■ このスレッドは過去ログ倉庫に格納されています
2019/08/10(土) 23:17:50.64ID:L+B8OP2P
シェルスクリプトに関する総合スレッドです。

全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。

シェルスクリプト総合 その30
https://mevius.5ch.net/test/read.cgi/tech/1561989867/
2019/08/29(木) 20:57:49.50ID:VG5IecJ5
>>416
末期の日本軍みたいよな。
日本生まれのRubyがその生みの親と同じ末路を辿るとはあまりに悲しい皮肉よ
2019/08/30(金) 00:19:45.85ID:LpXSw35l
日本軍は現場を知らない奴が出世して参謀とかになってるからおかしいことになった
自分は死ぬ気が無いのに他人に市ねと命令するクズ

rubyの人は現場で手を動かしてる分、かなりマシ
2019/08/30(金) 02:13:05.42ID:/ghu33Nb
その肝心要の現場でRubyが動いてないって話をしてんだよなぁ…
2019/08/30(金) 02:39:34.78ID:1KmU2S17
ム版でここまでヘイトを集められるのはある意味ユニークスキル
2019/08/30(金) 05:01:24.34ID:+D5+4uT9
貴様ら!大日本帝国陸海軍を愚弄するか!
Ruby如きの比喩に使うな馬鹿者が!
2019/08/30(金) 05:19:46.60ID:Nlc2IKSs
ここ以外にプログラミングについて活発に議論してるとこってある?
QiitaとかTwitterみたいなとこじゃなくて匿名でかしこまってないのがええ
2019/08/30(金) 06:18:12.78ID:LpXSw35l
>>421
今の日本では馬鹿の象徴だよ?帝国陸海軍
2019/08/30(金) 07:57:05.44ID:yjTPnYwz
つーかなんで日本軍が出てくるのか意味不明
2019/08/30(金) 08:10:38.43ID:jhLEZvWx
大失敗の象徴としてだろけど、Rubyと絡めるのは意味不明
なんであれどういうものであれ批判するヤツ、アンチはことさら大げさに言うのが定番のだろう
2019/08/30(金) 08:49:34.60ID:1L0XShC3
やれやれ、じゃあまた俺がシェルスクリプトのお題でも出してやろうかね?
2019/08/30(金) 08:53:17.88ID:1L0XShC3
じゃあいつもとは趣向を変える

Bourne ShellとPOSIXシェルの違いを教えて下さい。
2019/08/30(金) 08:53:40.01ID:1L0XShC3
じゃあいつもとは趣向を変えて
と書こうとしたw
2019/08/30(金) 09:03:36.53ID:jhLEZvWx
いつもの承認欲求だけだろ
2019/08/30(金) 09:07:30.27ID:yjTPnYwz
>>422
知恵袋いけ
2019/08/30(金) 09:30:45.39ID:1L0XShC3
Bourne ShellとPOSIXシェルの違い、教えてくださらぬか?
2019/08/30(金) 10:04:47.60ID:BnHn7wdj
日英両対応のクリップボードへのコピーとペーストの部分どうしてる?
cygwin Linux mac などを
uname | grep "CYGWIN" > /dev/null && do-something
のようなかんじの分岐を copy_to_clipboard paste_from_clipboard で考えている
そして コピーのときに
cygwin だと > /dev/clipboard
linux や mac だと別の何かになる

本当は perlモジュールの Clipboard が OS の差異を吸収してくれる予定だったが
日本語だけはうまく処理してくれないから半分車輪の最発明ののようなことになった
2019/08/30(金) 10:50:41.75ID:1L0XShC3
そんなことやろうと思ったこともないんだが、
どうやってSSH越しにクリップボードに入れられるんだ?
それシェルの機能なのか?端末の機能では?
2019/08/30(金) 10:57:15.04ID:BnHn7wdj
SSH 超しじゃなく、ポータブルなコードが欲しかった
環境によってクリップボードのアクセス違うから
Xxx | copy_to_clipboad
paste_from_clipboard | Yyy
のように書けたら楽じゃないか?
2019/08/30(金) 11:18:44.20ID:yjTPnYwz
macはpbpaste/pbcopy
linuxはxselかxclip
2019/08/30(金) 11:28:41.14ID:BnHn7wdj
thanks
2019/08/30(金) 11:34:05.64ID:1L0XShC3
コピペしたいとか思わないからなぁ。
コピーはともかくペーストしたいわけでバイナリのペーストもなくはないけど
通常は出力したテキストのペーストでしょ?
ファイルに書き出せばいいじゃんって思っちゃう。
まあ別にコピペを否定したいわけじゃなくて、やろうと思わないなって話。
2019/08/30(金) 18:38:47.93ID:CkOCkFW4
Cygwinならclip.exeを呼び出せばいいんじゃない
2019/08/30(金) 19:33:44.50ID:yjTPnYwz
>>438
clip.exeはペーストできない
cygwinは/dev/clipboard
2019/08/31(土) 00:01:36.74ID:nixiltP4
getclipboard使えば
2019/08/31(土) 02:48:40.05ID:0iGUnrw4
クリップボードみたいなGUIに強く依存した(例えば画像や装飾のある文章を切り貼りできる)機能は
なかなかOS間・ベンダー間で協調したり標準化したりするのが難しそう。
素人考えだが。
2019/08/31(土) 03:00:42.96ID:4qIvp+ND
httpみたいにMIMEを流用すればいいんじゃないの?
扱えないタイプはぺっすればいいんだし
2019/08/31(土) 08:47:44.75ID:0iGUnrw4
ではその旨を各社にお伝えください。
2019/08/31(土) 08:49:53.41ID:0iGUnrw4
一個人がアレコレ妄想するぶんには訳ないけど、各々のベンダーが顧客の体験を変えることなく(つまりインターフェース面での過去互換性を最小限にして)
「ぼくのかんがえたさいきょう」のクリップボード仕様を採用してくれるとは到底思えんがね。
2019/08/31(土) 13:00:30.93ID:LtUqD47M
クリップボードってそのままのデータをやり取りするIPCだろ
2019/08/31(土) 13:02:39.70ID:MkewyPY7
それはパイプ。クリップボードはクリップボード
2019/08/31(土) 13:08:50.01ID:LtUqD47M
クリップボードは共有メモリだろパイプじゃない
2019/08/31(土) 13:13:42.31ID:MkewyPY7
IPCというならだよ。プロセス間通信という感じではない、言うような共有メモリだな
どのプロセスが書いたのか知らん知ってるフォーマットのデータを読むだけだし
2019/08/31(土) 13:18:28.51ID:LtUqD47M
IPCは共有メモリ、セマフォ、パイプなどのプロセス間通信の総称なんだが
2019/08/31(土) 13:22:09.06ID:MkewyPY7
共有メモリは広義にはIPCに含まれるだろうが、通信ではないし、クリップボードはプロセス間通信ではないな
共有メモリを使ったプロセス間通信はあるだろうけど、クリップボードがプロセス間通信かと言えば違うだろう。パイプはもろにプロセス間通信という

クリップボードってそのままのデータをやり取りする共有メモリだろ
でまさしくだし、それでいいんじゃね
2019/08/31(土) 13:26:20.90ID:LtUqD47M
共有メモリは広義にも狭義にもプロセス間通信なんだが
プロセス間でデータをやり取りするための機構だ
2019/08/31(土) 13:36:21.83ID:MkewyPY7
プロセス間でデータのやりとりさえできれば、通信するプロセス間の関係性即時性一時性なんて全く関係ないのもプロセス間通信と思えるならそうだろな
そもそもプロセス間通信をするために用意したのが共有メモリだと思うよ。共有メモリを使うから=プロセス間通信ではないだろうとは俺は思うけど。ファイルシステムもIPCになる感じになるな、そのままのデータをやり取りするなら
2019/08/31(土) 13:39:19.82ID:iNpyZmkw
つーかどれとどれのプロセスの通信なんだよw
2019/08/31(土) 13:40:17.30ID:iNpyZmkw
コピペは重要な機能なのに、標準化されなかったから
vimからemacsへのコピペすら出来ない
2019/08/31(土) 13:40:59.50ID:iNpyZmkw
UNIX思想の限界の一つだよな
2019/08/31(土) 13:43:50.78ID:LtUqD47M
IPCの意味調べてこいよ
オレオレ定義を語られても困るんだけど
2019/08/31(土) 13:48:52.24ID:MkewyPY7
自分でも共有メモリと言っているのに、IPCに拘る方がわからんわ
クリップボードがIPCと言われると違和感しかないな。ファイルシステムもになるからw言っている意味がわからんのならIPCとはなんのためになんぞやを調べた方がいいよ
2019/08/31(土) 13:51:06.96ID:LtUqD47M
だからおまえが調べてこいよ
わけわからんやつだな
2019/08/31(土) 13:56:35.05ID:ndYyEVRN
調べてきたぞ。そのうえで意見は何も変わらん。
なにか言いたいなら、自分の口で言いたまえ
つーか俺が不利になることを俺が調べると思ってんの?w
2019/08/31(土) 13:57:20.39ID:LtUqD47M
じゃあ頭悪いんだから無理するなよ
2019/08/31(土) 13:57:22.41ID:MkewyPY7
言われるまでもなく知ってるよというのを匂わせていたんだけどww

プロセスがどのプロセスが(読むか読まれるか知らんけど)書く、どこぞのプロセスが誰が書いたのか知らんのを読む
対象が共有メモリだからIPCとでも言っているようだけど?だからIPCとはなんのためになんぞやを調べた方がいいと言っているのだが
2019/08/31(土) 13:58:45.11ID:wH7D17fo
共有メモリに関数(プロシージャー)をおいて
呼び出すのがI(インターネット)P(プロシージャ)C(コール)なわけだが?
2019/08/31(土) 13:59:35.20ID:MkewyPY7
ちょっと訂正
プロセスが(どのプロセスが読むか読まれんか知らんけど)書く、どこぞのプロセスが誰が書いたのか知らんのを読む

クリップボードってそのままのデータをやり取りする共有メモリだろ
でいいだろうに、なんでIPCのこだわっているのかさっぱりわからんな
2019/08/31(土) 13:59:51.95ID:gu7Dz/47
馬鹿二匹

馬鹿1「俺のほうが知ってる。お前調べてこい。そして俺に教えろ。」
馬鹿2「俺のほうが知ってる。お前調べてこい。そして俺に教えろ。」
2019/08/31(土) 14:00:12.26ID:LtUqD47M
お大事に
2019/08/31(土) 14:02:37.03ID:ITKcc2Rb
割り込んで良い?

Bourne ShellとPOSIXシェルの違いを教えて下さい。
2019/08/31(土) 14:57:30.64ID:Zp9ErCWA
うーーんメーカー規格と標準規格で中身はおんなじとか
2019/08/31(土) 15:05:45.40ID:0iGUnrw4
まーーーた始まった。
しかも今度はシェルの話題ですらないw
2019/08/31(土) 15:11:29.97ID:0iGUnrw4
>>466
知らんけど
いわゆるBourneシェルはUnix V7あたりの「古き良き」シェルを指す?
でPOSIXはそのBシェルと前後して登場していた種々のシェルの微妙な非互換性を埋めるべく
Unix V7が全盛だった頃よりもっと後になって登場した「実装のない」シェル?
だからPOSIXシェルというのは正確にはPOSIX準拠シェルで
POSIX準拠シェルにはBシェルで使えない機能もある。具体的には set -o <機能の長い名称> とかかな?。
Bシェルが動いてる環境にPOSIXに準じた書き方をした筈の(つまり「現時点での」最大限の互換性がある筈の)
シェルを持っていっても,動かない場合がある。
POSIXはBシェルを大いに参考にはしたかも知れないが,Bシェルでも動くようにとか,
ましてBシェルと過去互換であるようになんてことは念頭に置いてない。

どうっすか先生。
2019/08/31(土) 15:16:19.89ID:a1oQmbic
>>467 >>469
あー、なりたちとかそういうのじゃなくて
何が出来て何が出来ないとか機能的な話です。
2019/08/31(土) 15:30:41.04ID:4qIvp+ND
>>470
POSIXの仕様書は読んだの?
2019/08/31(土) 15:57:20.87ID:0iGUnrw4
>>470
http://pubs.opengroup.org/onlinepubs/9699919799/utilities/sh.html
2019/08/31(土) 16:03:38.88ID:3i1dPJsj
Bourne Shellの仕様がないと比べようがないんだが?
2019/08/31(土) 16:40:24.77ID:0iGUnrw4
「ないんだが?」←草
2019/08/31(土) 16:50:51.67ID:4qIvp+ND
>>473
ソース公開されてるから自分で読みなよ
何甘えてんだよ
2019/08/31(土) 17:01:32.42ID:3i1dPJsj
やっぱりだれもBourne Shellの仕様を知らないのかな?
2019/08/31(土) 18:16:09.72ID:0iGUnrw4
だって「いつの」「どのOSに搭載された」「どんなベンダーが配布していた」Bシェルか一切指定されてないからね。
候補は幾つかあるものの出しようがない。
2019/08/31(土) 18:19:00.41ID:0iGUnrw4
まさかと思うがBourne Shellが絶対不可侵,永久不滅の存在だなんて思ってないよな。
円周率じゃないんだから,単に「Bourne Shellの仕様」と言っただけで特定できる訳がない。
「Windows XPの仕様」←これがどれだけ曖昧な言明か,ちょっとでも真面目に
プログラミングとその文書化に取り組んだなら分かる筈。
2019/08/31(土) 18:20:26.43ID:0iGUnrw4
「Solaris 10の仕様」「Unix V7の仕様」←「Windowsのことなんてシラネーシ」みたいな反論を先に封じておくために
Windowsでない例を挙げておこう。
2019/09/01(日) 00:08:11.60ID:1i1y7fC5
POSIXって右と左で中身がガバガバだから作られた最低限の共通仕様じゃないのか
無人島じゃ家電は役立たずでもアーミーナイフならどこでも使える的な
2019/09/01(日) 00:12:22.70ID:7+2OKNJu
>>478
言い訳してるようにしか見えんが、
特定できないというのなら、一例としてお前のよく知る
○○と仮定して答えりゃいいやん
2019/09/01(日) 00:15:35.40ID:7+2OKNJu
>>480
POSIX準拠シェルの説明としては間違ってないが、
Bourne Shellとの比較であれば、POSIX準拠シェルの方が機能が多い

POSIX準拠シェルを「最低限の共通仕様」というのなら
Bourne Shellは最低限の仕様すら満たしてない使えない実装
2019/09/01(日) 00:36:05.17ID:tx4fDw07
最低限の共通仕様と言ってるだろ、最低限の仕様じゃないよ
2019/09/01(日) 00:37:19.00ID:5y1tL0M+
>>478
複数の機能の複合体のWindowsXPと、もう誰もいじってないBourne Shellを
同列に並べるあたり、必死に言い訳をしてるようにしか見えんなあ
2019/09/01(日) 01:30:55.26ID:7+2OKNJu
>>483
だからBourne Shellは「最低限の共通仕様」を
満たしてないんだってば
2019/09/01(日) 02:19:47.47ID:tx4fDw07
Bourne ShellをベースにBourne Shellの機能を満たすように作るだろ、最低限でも
Bourne Shellの機能に飽き足らず拡張した部分の最低限の共通仕様だろ
最低限の仕様といえばBourne Shellの仕様だろ
2019/09/01(日) 02:27:49.82ID:V0W1RnmC
Bourne ShellはPOSIX準拠じゃないから「最低限の共通仕様」を満たしてないんだってば
2019/09/01(日) 02:31:19.82ID:tx4fDw07
POSIXが出る前POSIXを作るときの話だよ。Bourne ShellはPOSIX準拠じゃないってズレすぎ
Bourne Shellに機能拡張した部分の最低限の共通仕様だろって言ってるだろに

そもそもだな、つっこみどころが違う、「(右と左で中身がガバガバだから作られた)共通仕様」なのか?と思うけどw
2019/09/01(日) 02:51:26.82ID:V0W1RnmC
「最低限の共通仕様」ってPOSIXのことじゃないの?
2019/09/01(日) 03:07:24.67ID:tx4fDw07
Bourne Shellに機能拡張した部分の最低限の共通仕様=POSIX
「Bourne Shellに」「機能拡張した部分の」「最低限の共通仕様」だって言ってるだろに

Bourne Shellありき
どこのぞのバージョンが、それに a b c etc... な機能を追加
どこのぞのバージョンが、それに b c d etc... な機能を追加
Bourne Shell + b + c = POSIX
という意味だろう>>480のいう最低限の共通仕様は
2019/09/01(日) 03:21:19.69ID:V0W1RnmC
POSIXはkshをベースに作った仕様だけどね
2019/09/01(日) 03:22:16.21ID:tx4fDw07
>>487なんて変なこと言い出さずに、それを言えよw
2019/09/01(日) 03:28:52.19ID:V0W1RnmC
だからBourne ShellはPOSIX準拠じゃないよね
でいいんでしょ
2019/09/01(日) 03:31:36.55ID:tx4fDw07
なにをそんなに食い下がっているのか意味わからん。なんの意味があるのそれに?
(そんなこと言い出すのはアホか?としか思えんぞw、常識的にPOSIXなんて存在する前のにPOSIX準拠もなにもないだろう)
2019/09/01(日) 03:33:35.57ID:V0W1RnmC
なんでPOSIXが存在する前の話になってるのか分からんけどねw
2019/09/01(日) 03:35:57.77ID:tx4fDw07
「POSIXって」「右と左で中身がガバガバ」「だから」「[作られた]」
って書いてあるだろう

わざとなのかわざとじゃないのかわからんが、人のレスを読む努力はした方がいいぞ
そうしたら変なこと言い出さずに変なこと言ったことを誤魔化すような醜態はさらさないだろうw
2019/09/01(日) 03:39:37.50ID:V0W1RnmC
>>490で言ったこと訂正しとけよw
2019/09/01(日) 03:40:28.13ID:tx4fDw07
そのレスは読めないなw
俺のレスが読めなくてのとしか思えん
2019/09/01(日) 04:22:29.76ID:5y1tL0M+
ごめんなさいって言えば良いのになんで突っ張るかねぇ
2019/09/01(日) 04:34:43.52ID:YaEsaVCE
>>488
> Bourne Shellに機能拡張した部分の最低限の共通仕様

それ日本語になってないだろ?w

自分が言った言葉を無理やり辻褄が合う(?)ように改変したから
そういう意味不明な言葉になってるんだぞ
2019/09/01(日) 04:36:27.29ID:YaEsaVCE
>>491
> POSIXはkshをベースに作った仕様だけどね
Bourne Shellではなくkshをベースに作られたんだな
2019/09/01(日) 04:40:50.68ID:tx4fDw07
ん?

Bourne Shellに機能拡張した部分の最低限の共通仕様

Bourne Shellありき
どこのぞのバージョンが、それに a b c etc... な機能を追加
どこのぞのバージョンが、それに b c d etc... な機能を追加
Bourne Shell + b + c = POSIX
という意味だろう>>480のいう最低限の共通仕様は

どう、日本語になってないの?
2019/09/01(日) 04:41:03.98ID:YaEsaVCE
>>477
> 候補は幾つかあるものの出しようがない。

候補が有るなら出せるのでは?w
後方がいくつか有るというのなら、その候補を言ってみなよ。
その中で最後に作られたもの(or 一番機能が多いと思われるもの)に
すればいいだけだからさ
2019/09/01(日) 04:42:29.94ID:YaEsaVCE
>>502
Bourne Shellに機能拡張した「部分」
の部分とはどこの部分?

その「部分」の「最低限の」「共通仕様」がPOSIXなんでしょ?
2019/09/01(日) 04:43:18.76ID:tx4fDw07
>>502 に書いてあるけど?
2019/09/01(日) 04:44:02.38ID:YaEsaVCE
>>505
書いてないから言ってる

「部分」=○○

という形で言えばいいだけ

はいどうぞ
2019/09/01(日) 04:44:51.13ID:tx4fDw07
b と c だよ
2019/09/01(日) 04:48:27.13ID:YaEsaVCE
b と c があって、その部分の
最低限の共通仕様がPOSIXなわけね
2019/09/01(日) 04:49:02.25ID:tx4fDw07
そう最初から言ってる、書いてるんだけどなあww
2019/09/01(日) 04:49:14.02ID:YaEsaVCE
つまり、Bourne ShellはPOSIXには含まれないと
2019/09/01(日) 04:50:02.57ID:tx4fDw07
ああ、違う、違う読み方してんのか??
どこのぞのバージョンが、それに a b c etc... な機能を追加
どこのぞのバージョンが、それに b c d etc... な機能を追加
なんぞの共通の最低限の共通仕様だからね
2019/09/01(日) 04:50:42.66ID:tx4fDw07
>>510
ん?
Bourne Shell + b + c = POSIX
って書いてるんだけど?
2019/09/01(日) 04:51:10.99ID:YaEsaVCE
> なんぞの共通の最低限の共通仕様だからね

お前「部分」って言ったよね?

Bourne Shellに機能拡張した部分(b+c)の最低限の共通仕様
2019/09/01(日) 04:52:24.67ID:tx4fDw07
それに a b c etc... な機能を追加
a b c etc... なんぞは部分だわな
2019/09/01(日) 04:52:27.35ID:YaEsaVCE
> b と c だよ

言質とりましたーw


Bourne Shellに機能拡張した部分(b+c)


(b+c)の最低限の共通仕様がPOSIXだって言いましたー
2019/09/01(日) 04:53:50.39ID:tx4fDw07
なにを喜んでいるのか意味わからんな。どこになんの言質??
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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