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

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

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

シェルスクリプト総合 その30
https://mevius.5ch.net/test/read.cgi/tech/1561989867/
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
なにを喜んでいるのか意味わからんな。どこになんの言質??
2019/09/01(日) 04:54:23.93ID:YaEsaVCE
>>515をみろ
2019/09/01(日) 04:55:11.18ID:tx4fDw07
だから、なんの言質かと聞いているんだが
2019/09/01(日) 04:56:08.38ID:YaEsaVCE
Bourne Shellに機能拡張した「部分」が(b+c)だって言質とりましたーw
2019/09/01(日) 04:57:06.97ID:YaEsaVCE
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\
2019/09/01(日) 04:59:06.93ID:tx4fDw07
まさか、POSIXとは (b+c)のことだって言ったと言っているわけじゃないだろうね?
Bourne Shell + b + c = POSIX
って書いてあるだろう。POSIXとはこれのことだと言っているのだろうとは俺は言っているけど。それも俺の主張ではなくて>>840の言いたいことはだがなw
2019/09/01(日) 05:00:27.58ID:JXg8T9pY
キチガイ VS キチガイ

ファイ!
2019/09/01(日) 05:00:57.18ID:tx4fDw07
>>521
× >>840の言いたいことは
>>480の言いたいことは
いい加減長いw
2019/09/01(日) 05:02:27.14ID:YaEsaVCE
>>521
だから

「Bourne Shelに」に「機能拡張した部分(b+c)」の「最低限の共通仕様」=POSIXだろ
2019/09/01(日) 05:03:43.36ID:JXg8T9pY
>>523
長くてもいいよ。
見てて面白いからもっとやれ。
どうせこんな場末のスレなんてチガイ同士の喧嘩かスクリプトくらいでしか活気付かないんだから。
2019/09/01(日) 05:04:01.75ID:tx4fDw07
>>524
それでいいよ(?)で?
2019/09/01(日) 05:05:08.99ID:YaEsaVCE
>>526
で、って最初から言ってる。
日本語になってないと。
2019/09/01(日) 05:05:14.28ID:tx4fDw07
>>525
すぐに喧嘩とか思っちゃうのねw
2019/09/01(日) 05:05:42.43ID:tx4fDw07
>>527
だから、どうなってないのかと聞いているんだが?
2019/09/01(日) 05:11:25.25ID:YaEsaVCE
>>529
Bourne Shellに機能拡張した部分(b+c)の最低限の共通仕様 がPOSIX
↑日本語になっていない

↓正しい日本語
Bourne Shellを機能拡張したシェルの共通仕様がPOSIX


まあ↑は日本語としては正しいが、言ってることは間違いだけどな

正解
Bourne Shellを機能拡張したkshのサブセットがPOSIX
2019/09/01(日) 05:17:42.82ID:tx4fDw07
その俺のからはその添削後の意味は取れないのね?ふーん
まあ、それならすまんかった。(なんかそうとは思えんけどw)
2019/09/01(日) 05:18:51.37ID:YaEsaVCE
まさにこれw

499 名前:デフォルトの名無しさん[sage] 投稿日:2019/09/01(日) 04:22:29.76 ID:5y1tL0M+ [2/2]
ごめんなさいって言えば良いのになんで突っ張るかねぇ
2019/09/01(日) 05:19:56.80ID:tx4fDw07
いや、言ってるけど
そこまで読めないのか?というのは拭えないというだけで
2019/09/01(日) 05:26:24.29ID:YaEsaVCE
で、話を戻そうか?

>>477
> 候補は幾つかあるものの出しようがない。

候補が有るなら出せるのでは?w
後方がいくつか有るというのなら、その候補を言ってみなよ。
その中で最後に作られたもの(or 一番機能が多いと思われるもの)に
すればいいだけだからさ
2019/09/01(日) 05:31:12.93ID:YaEsaVCE
忘れているかもしれないけど、

Bourne ShellとPOSIXシェルの機能の違いはなにか?
という話です。
536デフォルトの名無しさん
垢版 |
2019/09/01(日) 13:23:16.11ID:fPTBNnye
やっぱりどこでも動くシェルスクリプトなんて幻想なんだねw
2019/09/01(日) 13:28:25.22ID:hBg0Iyqv
まーた始まった
538デフォルトの名無しさん
垢版 |
2019/09/01(日) 13:38:39.47ID:sO2LPoJE
昨日神保町の本屋でこんな本みつけた。ペラペラの薄い本で妙に安い(300円+税)。内容は初心者向け。

シェルスクリプト入門の入門
http://ankokudan.org/d/d.htm?detail230-detailread-m.html
2019/09/01(日) 14:14:10.44ID:IrmDadb6
どうでもよさそうなものださなくていいよ
2019/09/01(日) 18:13:48.55ID:Zrnas7uJ
UNIXの分裂とかも、こんな不毛な言い争いから始まったんだよなw
2019/09/01(日) 18:27:20.62ID:5y1tL0M+
AT&Tの解体が原因じゃないの?
2019/09/01(日) 19:11:34.33ID:ugxLNVG7
う、うん…
2019/09/01(日) 23:36:59.29ID:V0W1RnmC
自分の間違いを素直に認められないやつは厄介だなw
2019/09/02(月) 02:57:56.84ID:qpVgNjbx
キチガイ
2019/09/02(月) 05:42:07.68ID:moJkj9e4
こんな場末の記事でしか偉ぶれないなんて,かわいそう。
2019/09/02(月) 06:47:31.22ID:mejwNGsW
こんな場末のスレで煽りしか入れられないなんて,かわいそう。
2019/09/02(月) 08:23:13.45ID:KSSQVEnP
>>546
自分を可哀想だと言い始めたら、人生終わりだよ
2019/09/02(月) 08:29:03.25ID:mejwNGsW
>>547
>>546
2019/09/02(月) 09:13:03.84ID:moJkj9e4
もしかして >>546 って >>545 に「言い返した」つもりなのかね。
ヤベーなw
2019/09/02(月) 09:29:50.35ID:mejwNGsW
>>549
>>546
2019/09/02(月) 10:24:24.46ID:PyPzRv4a
Bourne ShellとPOSIXシェルの機能の違いはなにか?
という話はどうなりましたか?
2019/09/02(月) 11:36:53.96ID:PWSlwBbe
※ 忘却の彼方に流れていきました
2019/09/02(月) 18:30:44.36ID:1C5pGEJg
https://tangentsoft.com/misc/unix-shells.svg
POSIX shellと比較するならkshの方が適切な希ガス
2019/09/02(月) 19:04:17.99ID:PyPzRv4a
Bourne ShellとkshだったらBourne Shellの方が有名だろ?
何を持って適切と言ってるのか知らんけど
2019/09/02(月) 22:23:56.37ID:8MncpZHQ
逆に言えば有名だから何なんだという話でもあるなw
2019/09/02(月) 23:36:30.01ID:PyPzRv4a
有名だから聞きたいんだよw
UbuntuとDebianの違いはよく書きれても
UbuntuとLinuxfxの違いなんて気にしないでしょ?

言われて初めて、へー、そんなのあったんだーレベルだから
2019/09/02(月) 23:36:49.17ID:PyPzRv4a
UbuntuとDebianの違いはよく聞かれても
2019/09/02(月) 23:45:33.27ID:KSSQVEnP
>>553
$ bash -c 'unset a b;echo 10|read a;let b=a+10;echo $b'
10
$ ksh -c 'unset a b;echo 10|read a;let b=a+10;echo $b'
20
$

どっちがPOSIX的に正しいの?
2019/09/02(月) 23:46:05.05ID:KSSQVEnP
>>558
letは正しくないからそこは放置でw
2019/09/03(火) 00:05:50.68ID:zMaEK75z
ほぅ…
$ bash -c 'unset a b;echo 10| { read a;let b=a+10;echo $b; }'
20
2019/09/03(火) 00:13:50.73ID:1Annr1ic
>>560
へーそんな挙動するのか。
2019/09/03(火) 00:31:57.81ID:KovswbEV
パイプの右側がサブシェルになるのかどうかはPOSIXで規定されてない
どちらも間違いじゃないが、bashの動きのほうが多い
2019/09/03(火) 01:10:57.53ID:estwIa98
bash --posixでもうっかり配列は動く悲しみ
2019/09/03(火) 01:31:09.86ID:WJPOiKcg
>>562
多いとは?

POSIXshellはksh派生なのに動きが違うのがなんとも
2019/09/03(火) 02:41:22.59ID:KovswbEV
>>564
bash, dash, mksh, yash, posh が同じ動き
ksh, zsh が同じ動き
2019/09/03(火) 02:44:16.76ID:KovswbEV
>>564
POSIXシェルという実装は存在しない
だからkshの動きはPOSIXシェルの仕様通りと言える
bashはPOSIXシェルそのものではない。
2019/09/03(火) 02:56:06.66ID:1Annr1ic
>>566
「kshの動きはPOSIXシェルの仕様通り」
正確には
「kshの動きをPOSIXがシェルの仕様として採用した」
だな。
2019/09/03(火) 13:39:17.34ID:SNzApyUr
これマジ?
2019/09/03(火) 17:49:01.73ID:U7UFDLpo
>>566,567のこと?>>567の下は上と同じこと言っているとしか見えないが
だったらマジじゃないだろう
2019/09/11(水) 12:29:34.80ID:0GNwCqDq
POSIXは他の環境でも動く共通規約
GNUのソフトは高機能だがそれ自体が方言ということ
組み込みは機能を削ぎ落とすため色々知恵が必要
一般人はbashだけ使ってればおk
こんな認識で問題ない?
571デフォルトの名無しさん
垢版 |
2019/09/11(水) 12:40:30.30ID:3HQIKx2V
やっぱりどこでも動くシェルスクリプトなんて幻想なんだね…
2019/09/11(水) 12:52:40.14ID:IEmfVi5w
>>570
Linuxユーザーという前提?

POSIXに準拠していれば、多くの環境で動かすことが出来る
GNUはPOSIX準拠+高機能な拡張(標準語+方言)
GNU以外でも多かれ少なかれ拡張されてる
組み込みも完璧ではないが、多くの場合POSIX準拠に近い
一般人はWindowsだけ使ってればおk
dashで動かす必要があるなら、bashの拡張は使えない
2019/09/11(水) 12:53:13.99ID:IEmfVi5w
>>571
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\
2019/09/11(水) 13:53:14.59ID:/GwFJIf/
winでwsl使えるようになったし、bashが正義じゃないの?
macは知らないw
2019/09/11(水) 13:59:37.76ID:ujkZonF+
だからその、WSLのUbuntuの
/bin/sh は dash だっていってんの
2019/09/11(水) 14:06:58.77ID:Alp4BtBi
aptitude install bash
#!/usr/bin/bash
2019/09/11(水) 14:18:05.48ID:0GNwCqDq
>>572
Mint使ってるけどdashってどんな時に必要なの
軽さが求められるってラズパイやドローン辺り?
MacはBSDだからLinuxのコマンドオプションが使えないってのは面倒そうね
だからってそっちにcoreutils入れるのもアレだが
2019/09/11(水) 14:38:42.01ID:ujkZonF+
>>577
そんなもん、こんなの重いbash使うまでもないですよねってときに使うに決まってるじゃん

/bin/bzdiff:#!/bin/sh
/bin/bzexe:#!/bin/sh
/bin/bzgrep:#!/bin/sh
/bin/bzmore:#!/bin/sh
/bin/egrep:#!/bin/sh
/bin/fgrep:#!/bin/sh
/bin/fsck.btrfs:#!/bin/sh -f
/bin/gunzip:#!/bin/sh
/bin/gzexe:#!/bin/sh
/bin/gzexe:#!/bin/sh
/bin/lesspipe:#!/bin/sh
/bin/setupcon:#!/bin/sh
/bin/uncompress:#!/bin/sh
/bin/unicode_start:#!/bin/sh
/bin/zcat:#!/bin/sh
/bin/zcmp:#!/bin/sh
/bin/zdiff:#!/bin/sh
/bin/zegrep:#!/bin/sh
/bin/zfgrep:#!/bin/sh
/bin/zforce:#!/bin/sh
/bin/zgrep:#!/bin/sh
/bin/zless:#!/bin/sh
/bin/zmore:#!/bin/sh
/bin/znew:#!/bin/sh
2019/09/11(水) 15:20:07.21ID:wb8QVF41
bashが使えない環境のほうが特殊だよなぁ
素直に #!/bin/bash で書いときゃいいんじゃね

ところで、#!/usr/bin/env bash って使えるのか?
2019/09/11(水) 15:55:05.69ID:ujkZonF+
特殊だろうがbashが使えない環境は現実として存在してるわけで
2019/09/11(水) 20:12:45.01ID:sXUhuJjU
またひとりで必死だな
2019/09/11(水) 22:51:13.32ID:zVcNXGaB
またお前か
2019/09/12(木) 00:11:11.54ID:GvsY5hZk
普通にPCでLinux(とWindows)使ってるだけならbashだけでなんにも困らないよなあ
これはLinuxに限らずちゃんとしたUnixを使う場合もそうだけど、客先で使ったり客に何かを提供する場合は気を遣うべきだが
自分で自由にできるAIXやHP-UXならbashインストールすりゃいいんだし
584デフォルトの名無しさん
垢版 |
2019/09/12(木) 01:59:12.99ID:Uy9QyXie
つまりPOSIXなんてピエロだとwww
2019/09/12(木) 02:11:14.84ID:iqiqB/tU
オープンソース開発者「そら、お前がお前のためだけのツール作るなら、それでいいだろな。責任もなんにもないし」
586デフォルトの名無しさん
垢版 |
2019/09/12(木) 02:18:54.66ID:xw2iu/gH
MITとかの主要なOSSライセンス読んでみろ。
ソフトの使用でどんな損害被っても作者は責任持ちません。
それに同意しないと使えませんて書いてあるだろ。
オープンソース開発者こそ責任もなんもない。そのためのライセンスだから当たり前だが。
何を勘違いしてんのかねこいつはw
2019/09/12(木) 07:53:28.61ID:umd/llTn
>>574
macOSもzshがデフォだから実質Bashの機能が使える。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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