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

■ このスレッドは過去ログ倉庫に格納されています
2021/02/25(木) 09:20:14.64ID:ZyJLXTlk
シェルスクリプトに関する総合スレッドです。

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

前スレ: シェルスクリプト総合 その35
https://mevius.5ch.net/test/read.cgi/tech/1606221440/

関連スレ
・【Bash】Windows Subsystem for Linux【WSL】9
https://mao.5ch.net/test/read.cgi/linux/1607589861/
・Bashでプログラミング [転載禁止](c)2ch.net
https://mao.5ch.net/test/read.cgi/linux/1443885102/
・シェルスクリプト総合 その28
https://mevius.5ch.net/test/read.cgi/unix/1533154936/
・zsh その7
https://mevius.5ch.net/test/read.cgi/unix/1337844883/
・過去UNIXで使われていた ksh というシェルについて
https://mevius.5ch.net/test/read.cgi/unix/1582358403/
・【POSIX】UNIXプログラミング【BSD】 [転載禁止](c)2ch.net
https://mevius.5ch.net/test/read.cgi/unix/1443103705/
・おまえら! shell は何を使っているんですか?
https://mevius.5ch.net/test/read.cgi/unix/1012330865/
2021/04/30(金) 02:47:41.34ID:UkwhHCBd
>>497
オプション--null-dataをつけたらええやん?
500デフォルトの名無しさん
垢版 |
2021/05/01(土) 16:16:25.77ID:R5WysE71
今日の発見

何気なく LANG=C の状態で man ping をやったら日本語マニュアルでは出て来なかった -a を発見。
しかし、 "Audible ping. " ってなんだろうと思い、 -a を付けて ping をやってみるが -a なしと違いはない。
何だろうと散々悩んでまさか本当に音が出るのではと思い、ヘッドホンを指して聞いてみたら BEEP 音が出ていた。
(端末に Ctrl+G の出力しているだけの模様)。

これは普通の状態で音が出るようになってないと使えない(というか分からない)機能だな。
ていうか、この機能って需要あるのか? どういう時に使うんだ? (耳は聞こえるけど目が見えない人向け?)
501デフォルトの名無しさん
垢版 |
2021/05/01(土) 16:29:28.92ID:djtwQ/hU
システム言語英語にしてるから気づかなかった
2021/05/01(土) 16:33:54.50ID:8vBq+4lu
目が見えないなら読み上げとか使うだろうし
ただのユーモアのような気がする
2021/05/01(土) 17:12:17.40ID:/E4OYG0J
>>500
https://lab.kuas.ac.jp/~ippei94da/unixtodaystips/index.html#%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%AE%E5%B0%8E%E9%80%9A%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF
まあ、本気でやるならスクリプトを書くところやけど、ちょろっと待ったり確認したりするだけなら?
2021/05/01(土) 17:24:56.48ID:qPtffzbe
まあBEEPだと鳴るにしても、あんまり便利じゃないから、bellってスクリプトつくって、mpg123で小さなサウンドファイル鳴らしてたなーw
時間のかかる処理動かすときに、;bellとかやってたわw
505デフォルトの名無しさん
垢版 |
2021/05/01(土) 20:54:25.86ID:mMPVMQKF
>>500
日本語マニュアルは古いからな
Ubuntu 20.04のbashのマニュアルなんか
英語版は当然bashのバージョンと同じ5.0(2018年)のマニュアルが入ってるが
日本語版だと4.2(2010年)のやつだからな

あとpingに音がなる機能は便利だぞ
pingで音を鳴らしながら断線チェックするんだよ
断線しかかってるケーブルがあれば触った時に音がなったり止まったりするだろ
一人がディスプレイの前にいて「あ!そのケーブル触ったときに繋がりました!」
なんて叫ぶ必要がなくなるから、一人でも作業できる
2021/05/01(土) 21:24:12.83ID:j1QPmhQJ
>>805
その最後の為にってのが本当かもね
https://ftp.arl.army.mil/~mike/ping.html
同じこと書いてる。当時は-aは無かったようだが
2021/05/01(土) 21:43:09.83ID:j1QPmhQJ
>>506
>>505 の間違い
army.mil って、米軍(組織の一部)のサイトか
軍人か。pingって名付けるのも発想も納得だな
508デフォルトの名無しさん
垢版 |
2021/05/01(土) 22:42:41.06ID:mMPVMQKF
軍人は卓球が好きだったんか?
2021/05/01(土) 22:53:01.56ID:/E4OYG0J
https://gigazine.net/amp/20200809-story-of-ping
もあるな。

しかし、Navyならわかるが、Armyなの?w
2021/05/01(土) 22:56:49.66ID:oDxNWiQE
軍関係者、それも技術者研究者ならそんなナワバリとか無いんじゃね
陸軍でも海軍のそういうのは知ってはいるだろう一般知識的な
事故死で亡くなってるのね。世界的貢献度が高いし有名だから残してもいるのかな
2021/05/01(土) 22:59:35.67ID:oDxNWiQE
>>508
全然関係ないぞ、ソナーのって書いてるじゃん?
冷戦時潜水艦戦な小説読めばわかるぞ
まあ、ボケなんだろうけど
2021/05/02(日) 00:08:11.78ID:r2Ed4Ypi
>>505
ナルほどナルほどw確かに便利だねw
昔、ネットワークエンジニアやってた時を思い出してほのぼのしてしまったw
2021/05/02(日) 00:20:14.06ID:AuvpVVY/
>>508
それはping-pong。
ちなみにping-pongにしようとしたが商標の関係でpongだけになったパターンが。
2021/05/02(日) 01:01:49.26ID:AuvpVVY/
BSD系のpingは応答があるとき鳴るのとないとき鳴るのと2つオプションがある。
2021/05/09(日) 03:33:23.42ID:DzKdtz/a
ほんとこの人酷いわ。関わりたくないからここで書くけど
バカにされてる事にも気づかないでしゃしゃり出てきてこのセリフ

https://twitter.com/col_richie/status/1390912236181364737
> 何を隠そう私こそPOSIX原理主義者。
>
> 「藪医者」の語源(の一説)が面白いので紹介しておきたい。
>
> 藪医者とは、高価な薬が買えずに藪から薬草に使えそうな草を見繕って患者に与えていた医者のことだという。
>
> つまり適当にライブラリーを拾って解決を図るプログラマーは藪医者同然ということになる。

じゃあ藪医者ではない凄腕の医者は自分で薬を作ってるのか?
お前だって自分で作らずにPOSIXコマンドを使って解決してるだけだろ
他人の成果を利用してるだけのくせに自分で何も作らずに主義だけでマウント取ろうとするな
藪医者の語源を自分の主義を正当化するために曲解して利用するな
まさにPOSIX"原理"主義者だと思うわ

https://ja.wikipedia.org/wiki/%E3%82%AD%E3%83%AA%E3%82%B9%E3%83%88%E6%95%99%E5%8E%9F%E7%90%86%E4%B8%BB%E7%BE%A9
> キリスト教原理主義(キリストきょうげんりしゅぎ、英語: Christian fundamentalism)とは、
> 特にアメリカ合衆国で聖書の教えを硬直的、新興宗教的に歪曲するキリスト教右派、キリスト教根本主義、
> キリスト教会とその教派に向けて使用される。非難、侮蔑の意味合いを持って使用される場合も多い。

https://twitter.com/takapon_jp/status/9068335656
> 原理主義者はやはりイスラム原理主義者も捕鯨反対原理主義者も
> 正義原理主義者の検察もみんな頑固だから、
> 色んな曲解をしながら原理主義の姿勢を崩さない。
> だからこその原理主義者なんだろうが。。。というわけでもう、寝る。

お前が言う交換可能性とかPOSIXでは一切言われていない
POSIXの教えとは無関係なのにPOSIX原理主義者
POSIXという言葉と成果を利用してるだけ
https://twitter.com/5chan_nel (5ch newer account)
2021/05/09(日) 18:41:45.38ID:SrZZvaGV
チラシの裏に書くのがおすすめだよ
2021/05/09(日) 18:46:46.40ID:POHrmQr6
だな
普段あんなの視界外なのからは何宣伝してんのとも思えなくもない
2021/05/09(日) 18:58:58.35ID:QngfRO5p
やぶ医者 語源 でぐぐったら一番最初にこれが出てきてワロタw
https://www.kanken.or.jp/kanken/kankantown/trivia/trivia2.html

治療や診断が下手な医者を「藪医者」と言うが、草木が生い茂った「藪」とは直接関係なく、
もともとは「野巫(やぶ)」と書いたとされている。
「野巫」とは、まじないを使ったあやしげな治療しかできない田舎の医者のこと。
2021/05/10(月) 02:23:04.02ID:PuMIN21M
POSIX原理主義ももう終わりかねぇ
ネタとしては面白かったよ
2021/05/10(月) 09:00:19.42ID:m/v6xXVY
例えば微細化技術で消費電力半分になるんだがそのまま消費電力
半分にするかそれともトランジスタ2倍積むかって言われたら
今だったら(dashが必須だったような)組み込み用チップでも
後者をとってWebなりWifiの機能つけてメモリも潤沢になってる
だろうしなあ
2021/05/10(月) 09:42:46.16ID:Qz+CRcrD
>>520
選ぶとするならコスト削減になるほうじゃね?
同じコストで性能二倍になるなら
コスト半分にして同じ値段で前と同じ性能のものを売る
2021/05/10(月) 10:46:13.22ID:jJW0aId3
>>521
んな単純な話やないやろ。
パフォーマンス指向なら性能が高ければ高いほど売りやすいし、原価比率が小さければ下げたところでたいした儲けにならんし、結局、モノにもよるし経営判断にもよる。

つーか、何の話や?w
2021/05/10(月) 14:41:26.23ID:/CC3l5IU
Debianとかパフォーマンスが理由?でdashに変わったけど
今後これが将来bashに変わることってあると思う?
俺はもう無いと思うんだよね
性能的にはbashで良くなったとしても
互換性を理由にPOSIXに縛られちゃった
2021/05/10(月) 16:49:20.96ID:/CC3l5IU
POSIXってそんなにいいもんかねぇ
2021/05/10(月) 18:43:12.00ID:hErX5Z2R
Ubuntuでのことがあったから
まあしょうがないってことだな、ああいうプロダクトでは
bashismもそれでわかったくらいな、いいとか言う話ではないな

その後のUbuntuでもPOSIX縛りではないからな
まあPOSIXでも書けるならPOSIX準拠にするだろうけど、ああいうプロダクトでは
2021/05/10(月) 19:19:20.01ID:jJW0aId3
Ubuntuで何があったんだっけ?
2021/05/10(月) 19:47:37.47ID:hErX5Z2R
しばらくbashだったがdashに変えた。bashのPOSIXモードで動くように書いてたのに動かないやんけっていう
bashism問題に当たった最初のそれなりのスクリプトの数があるプロダクトがUbuntuじゃないのかな
もしくはちゃんと文書化して残したプロダクトかもだが
2021/05/10(月) 19:56:07.55ID:wjJJgxye
必要ないからだろ
bash必要ならインストール
2021/05/10(月) 19:58:31.16ID:hErX5Z2R
GNU/Linuxだからログインシェル用には必ず入っていそうだが
2021/05/10(月) 20:11:08.73ID:hErX5Z2R
>>523,524 がそもそも何か勘違いしてるだけだな
(>>528も。普段はインタラクティブでdashなんて使ってるのか?)

bashの時でも「ああいう」スクリプトはPOSIX(/bin/sh)準拠で書いてたからな
別に誰も #!/bin/sh でしか書くなとは言ってないだろう。ただなんとなくかそうした方がいい程度だなw
(なんか絶対にとか言う変なのは居るけど)
必要ならbashでもzshでもなんでも好きに書けばよろしい、シバンを適切にしてればいいことだな
2021/05/10(月) 20:19:30.27ID:aEtJHiO8
/bin/shがdashへのリンクになってるだけ
UbuntuでもDebianでもデフォルトのログインシェルはbash
上でも言われてる通りbashなりの拡張機能を使いたいならシバンをちゃんと設定すればいい話でしょ
2021/05/10(月) 20:29:43.61ID:hErX5Z2R
なってるだけが起因なんだがな
というより、bashもなってるだけでもあったろうが、GNUは変なとこで拘るからなあ。素直にPOSIXモードならPOSIX準拠にしていればいいようなもんなのに
なんか他のPOSIXのことでもオレオレの主張は曲げない独自にやるんだというのはあったな

GNU/Linuxはログインシェルはどのディストリでもbashだろうな
変わったディストリはあるかもしれないが
FreeBSDはtcsh、OpenBSDはkshみたいだな。macOSはzshか。BSD系は色々(歴史的に)ありそうだな
2021/05/11(火) 00:12:44.56ID:1enRFFJU
>>531
/bin/shがdashのリンクになってるだけという話じゃなくて
dashのリンクになっていてそれ以外に変更することはないだろうってことよ

>>532
> 素直にPOSIXモードならPOSIX準拠にしていればいいようなもんなのに
bashの場合POSIXモードにしていても非POSIXの機能が使えちゃうからね
/bin/shをbashにしてもPOSIX制限ができない
シバンを/bin/shにちゃんと設定してるのにPOSIXオンリーのシェルじゃないってのが問題
2021/05/11(火) 07:58:52.53ID:FhvqefgH
トレースしてるだけ
2021/05/11(火) 12:39:30.70ID:PU80Jyjy
極論だが古典的なシステムでは /bin/sh は POSIX 準拠でさえないんだから
POSIX 準拠厨はシェバンに #!/bin/dash って書くべき
2021/05/11(火) 12:44:51.27ID:1enRFFJU
>>535
POSIX準拠厨はPOSIXに準拠するなっていってんの?
2021/05/11(火) 13:12:35.75ID:ZJle8Vfo
dash用スクリプトを書くのにbashのデバッグ機能は必須(というほど大したもんでもないが…)
2021/05/11(火) 13:27:42.49ID:rqNaE/tz
>>535
今時の /bin/sh の最低限度がPOSIXなんだよ
POSIX以前の /bin/sh が現役(古いどころではないOSを無理に今でも使ってるではなく、現代的なOSでという意味での)なのはどこにあるの?
2021/05/11(火) 14:27:39.20ID:nf224V10
dashならPOSIX準拠、と信じてしまうのも、経緯的によろしくなさそうやけどなあ。

もうbashでもdashでも、#!に明記したほうがマシやろ。
あとから検索もしやすいし。
2021/05/11(火) 17:39:06.11ID:kzU/MSxe
ただの難癖
そして明記しない意味も無視かよ
541デフォルトの名無しさん
垢版 |
2021/05/12(水) 00:28:01.49ID:w4TAZAbA
>>539
スクリプトはPOSIXに準拠しており
POSIXシェルで動かすことを想定しているのだから
#!/bin/sh でいいだろ

実際に動かすシェルのことは知らん。そんなもん使う環境次第だろ。
スクリプトをmacOSにインストールするか、Debianにインストールするか、
その他のUNIXにインストールするか、そんなこと開発者が知ることなんてできない。
スクリプトがPOSIXシェルと言うだけの話。
2021/05/12(水) 00:34:31.14ID:1N3VwigT
>>538
bash じゃなくて dash を使わざるを得ないような極小環境で現役なものはどこにあるの?
正直 bash 拡張使って簡潔に書いたほうがRAMもROM/Storageも少ないんじゃないかと
さえ勘繰ってるわ
543デフォルトの名無しさん
垢版 |
2021/05/12(水) 00:39:55.66ID:w4TAZAbA
>>542
メモリやストレージを気にするならBusyBox一択
必然的に使うシェルはBusyBoxに内蔵されてるash

Alpine Linuxのbusyboxは 805.6KB
この中にシェルだけではなくcpやrmやawkなどの
よく使うコマンドが大量に詰め込まれてる
544デフォルトの名無しさん
垢版 |
2021/05/12(水) 00:44:00.91ID:w4TAZAbA
Alpineのbashは742.3k、dashは106.3kだな
それからdashを使うのは環境が極小だからと言うよりも
bashがPOSIXに準拠してないからだ
545デフォルトの名無しさん
垢版 |
2021/05/12(水) 00:46:26.43ID:w4TAZAbA
極小環境で現役なもの = 組み込み
2021/05/12(水) 00:46:28.75ID:1N3VwigT
>>541
/bin/sh が POSIX 準拠していない bash の環境もあるんだから
POSIX 準拠を期待しているならシェバンは #!/bin/sh と書くべきじゃない

既に /bin/sh が bash 期待のスクリプトも大量に出回っているから
/bin/sh から bash を追い出すのも現実的じゃない

つまりシェバンに #!/bin/sh って書く、イコール bash でも dash でも
動くなんかよくわからない基準でスクリプト書きますよって宣言している
ようなもんなんだから、そんな曖昧な宣言するぐらいならシェバンに
bash だの dash だの書いた方がいいんじゃないか?
547デフォルトの名無しさん
垢版 |
2021/05/12(水) 00:47:51.03ID:w4TAZAbA
>>546
> /bin/sh が POSIX 準拠していない bash の環境もあるんだから
だから、それはシェルスクリプトの問題じゃない
bashを使ってるシステム側の問題
548デフォルトの名無しさん
垢版 |
2021/05/12(水) 00:48:09.14ID:w4TAZAbA
#!/bin/sh はシェルスクリプトに書くものだってわかってる?
549デフォルトの名無しさん
垢版 |
2021/05/12(水) 00:49:26.60ID:w4TAZAbA
POSIXシェルで書いてる人は、dashで動かすなんて想定してないからなw
2021/05/12(水) 00:50:03.00ID:1N3VwigT
>>545
いや、今どき組込システムで bash じゃなくて dash 使わざるを得ない程メモリが
逼迫しているか?って話よ

それに busybox だけ使うならそれでいいんだけどセットで使うアプリのスクリプトが
bash 依存だったりして結局 bash もイメージに組み込まざるをえないとかあり得る
(といういかあった)話なわけで
551デフォルトの名無しさん
垢版 |
2021/05/12(水) 00:53:13.25ID:w4TAZAbA
>>550
だからPOSIXという互換性のほうが重要ということだよ
ほれみろbash依存のスクリプトなんか書くから困ってる
bash以外じゃ動かんだろ
2021/05/12(水) 01:00:08.38ID:1N3VwigT
>>547
でも「今からひっくり返せる戦況にもない」こともわかってるよね?
そこを見て見ぬ振りして POSIX が正義だと旗を掲げても無駄しにするだけだよ
553デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:01:55.36ID:w4TAZAbA
今からひっくり返せる戦況ってなんのこと?
すでに/bin/shがdashまたはashである環境が最多になってしまったから
脱bashの流れは止まらないって話?
2021/05/12(水) 01:04:16.31ID:1N3VwigT
>>551
> bash以外じゃ動かんだろ
スクリプトの動作の互換性という観点ではむしろそこが良いのがわかってない
bash/dash/ash に限定したほうが保守コストは下がるんだよ
555デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:04:53.84ID:w4TAZAbA
bashに限定したらダメでしょ?
dash/ashでは動かないんだから
556デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:06:24.03ID:w4TAZAbA
dash/ash用(つまりPOSIXシェル)で書けばbashでも動くが
bashの非POSIXシェル機能を使ったら、dash/ashで動かないってわかってますか?
2021/05/12(水) 01:08:44.46ID:1N3VwigT
>>553
いや bash 依存の #!/bin/sh なファイルがはびこっていてそれを駆逐できないって話なんだが
558デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:09:59.32ID:OO1NJlSc
本当すぐPOSIXの話題になるよな
559デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:10:52.06ID:w4TAZAbA
>>557
それはbash依存が問題なのではなくそのファイルが
メンテされてないっていうのが問題なだけ
そのファイルをメンテすればいい

メンテされてるなら
#!/bin/sh を #!/bin/bashに変更するだけ
560デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:11:51.40ID:w4TAZAbA
>>558
シェルスクリプトから移植性を取ったら何も残らない
それはもう別の言語で書けばいい
2021/05/12(水) 01:26:23.80ID:1N3VwigT
>>556
君は(坊主憎けりゃ袈裟まで憎い的な) bashism 死すべしが強すぎて話がそれ過ぎるきらいがあるな

bash 依存のシェバンは #!/bin/bash って書くのは当然
#!/bin/sh は何に向けてるかわからんから #!/bin/dash って明示しようぜって話だぞ?
562デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:27:46.42ID:w4TAZAbA
> #!/bin/sh は何に向けてるかわからんから
何に向けてるってPOSIXシェル全てだろ。何を言ってるんだ?
互換性がないならそれはそのシェルのバグであって
スクリプトの問題じゃない
563デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:28:10.36ID:w4TAZAbA
#!/bin/dashだったらdash限定になるじゃん
アホなのかな?
2021/05/12(水) 01:36:50.63ID:1N3VwigT
>>563
ash で動作するけど ash の劣化実装の dash では動作しないスクリプトを排除できるという意味で安全だ

下手に確認取れてない環境で間違った動作されるくらいなら動かない方がマシ
2021/05/12(水) 01:40:11.91ID:1N3VwigT
>>562
> 何に向けてるってPOSIXシェル全てだろ。何を言ってるんだ?
だからそこに bash 拡張必須な困ったちゃんが混在してて排除しきれない
から POSIX シェルとは言い切れないってさっきから説明してんだろ
566デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:40:52.17ID:w4TAZAbA
>>564
dashがashの劣化実装と言うなら、dashで動作テストすればOKじゃん
何を言ってるんだかw
567デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:42:05.81ID:w4TAZAbA
>>565
だから何が問題だっていってんの?

bashコードで書く人?
それは書く人の問題だよね

コードの問題になってないよね
568デフォルトの名無しさん
垢版 |
2021/05/12(水) 01:46:16.80ID:w4TAZAbA
私はこのスクリプトをPOSIXシェル用のコードで書いた
ちゃんと他のシェルで動くこともテストした
だから全てのPOSIXシェルで動作する
なので#!/bin/shにするのである

しかし私の中のもう一人の自分がdashでしか動かないかもしれないから
#!/bin/dashにしろというのである

なんて言う話だったら、頭がおかしいとしか思えないw
569デフォルトの名無しさん
垢版 |
2021/05/12(水) 02:04:49.76ID:w4TAZAbA
つーかashとdashってほぼ同じでしょ?ashで動作してdashで動作しないことなんてあるの?
あるならdashで動作確認しろってところは変わらんがな
2021/05/12(水) 02:05:08.70ID:VEm96Egx
理想主義者 vs 現実主義者
完全主義者 vs 悲観主義者
POSIX主義者 vs こだわらない派

落としどころはないな。。。
571デフォルトの名無しさん
垢版 |
2021/05/12(水) 02:10:51.35ID:w4TAZAbA
POSIXに準拠したコードであれば/bin/shで動くんだから
#!/bin/shにすればいいってだけなんだがな
572デフォルトの名無しさん
垢版 |
2021/05/12(水) 02:11:51.69ID:w4TAZAbA
もちろんそれがdashでしか動かないって言うなら#!/bin/dashにするべきだがな
どのPOSIXシェルでも動くなら#!/bin/shでいい
2021/05/12(水) 02:28:43.75ID:qBxmR+eO
ID:1N3VwigT
DebianやUbuntuで書いてあることを読んで出直せ
何もわかってないで自分が思うでしか言ってないだろう
2021/05/12(水) 02:30:20.07ID:qBxmR+eO
>>570
DebianやUbuntuで書いてることはそんな対立を生まない至極もっともなことを書いてあるんだがな
575デフォルトの名無しさん
垢版 |
2021/05/12(水) 02:58:36.12ID:w4TAZAbA
>>573
読んで出直したが何も変わらない。

お前がやってるその行為は
「DebianやUbuntuで書いてることを読んだら俺が正しいことが証明された。はい論破」
と言ってるのと何も変わらない

論破合戦がしたいなら、お前が書いてることを引用して
お前が言いたいことを主張しろ
576デフォルトの名無しさん
垢版 |
2021/05/12(水) 02:59:27.57ID:w4TAZAbA
>>574
DebianやUbuntuには#!/bin/shを#!/bin/dashにしろとは書かれていない
577デフォルトの名無しさん
垢版 |
2021/05/12(水) 03:00:17.09ID:w4TAZAbA
あ、俺に言われてるのと勘違いしたwww

ID:1N3VwigTに言ってるのか
2021/05/12(水) 03:01:24.77ID:QztuhdBY
お前に言ってねーよ
読めないいつものお前だろ?流石だな
わざと絡まないようにしてたのにwほんとお前はただただめんどくせえやつだな
2021/05/12(水) 03:02:31.85ID:QztuhdBY
トンチンカンなことを並べてるしwww俺はそんなこと言ってねえのに
つくづくお前ってやつはただただただただめんどくさいだけのやつだなあ
2021/05/12(水) 03:14:44.73ID:QztuhdBY
アホはほっておいて、まためんどくさいから最初と最後のへ

>>542
>dash を使わざるを得ないような極小環境
イミフ
/bin/sh が dash なLinuxディストリは普通にあるし。なんでそんな環境をと言い出すのかイミフすぎ

>>565
/bin/sh が POSIX shell であることが期待されているのは昔からだろう。どのくらい昔かは知らんがw
fileで #!/bin/sh なファイルがなんて出るか見てみ。fileのデータベースは公衆でメンテされていてのでソレなんだから大多数がそれを期待しているのは間違いないだろう
bashismなのが逸脱してるのとは別の話。bashismな #!/bin/sh は #!/bin/sh とするのは間違いだから #!/bin/bash に正しなさいというのが現在

あとdashにもなんかトンチンカンな難癖付けてるようだが、bashismと問題にしてるDebianがPOSIXから逸脱不足してるものを作るわけがないというのは常識的にわかるだろうにという

まあ、DebianやUbuntuで書いてあることを読んで出直せw
2021/05/12(水) 03:18:24.36ID:rVJ0Zld2
> bashismな #!/bin/sh は #!/bin/sh とするのは間違いだから #!/bin/bash に正しなさいというのが現在

その理屈だと dashism な#!/bin/shは#!/bin/dashにしなさいってことになるだろw
2021/05/12(水) 03:20:25.42ID:QztuhdBY
>>581
アホなレスすんなよwわざとだろ?w
2021/05/12(水) 03:22:04.92ID:rVJ0Zld2
はぁ?localとかPOSIXにないんだからdashismだろwww
2021/05/12(水) 03:38:40.82ID:QztuhdBY
バグじゃなのw ashのが残ってるとか
そういうのはdashismだからもちろん #!/bin/dash にすべきだろうな
そんなの使わないのが多いから見過ごされていても不思議ではないかな
他にもあるんだったらDebianに持って行った方がいいぞ。自ら ism を否定してるとこなんだから
2021/05/12(水) 03:54:18.34ID:QztuhdBY
いや、Debianの明確な仕様だな。どこぞのスクリプトでも使ってるのほぼ見たことないから>>584って言ったけど、すまん

Debianがシェルスクリプト仕様として、POSIXから拡張した数少ない(5つ)うちの一つだな
その5つをあえて使うなら #!/bin/dash の方がいいかもね。Debianではその5つを使うなら #!/bin/sh でもいいとは言ってるけど(他のシェルでも対応してるからとかかな??)
2021/05/12(水) 08:14:16.52ID:rVJ0Zld2
dashismは5つもあるのかよw
じゃあだめだな。#!/bin/dashにしないといかんなwww
2021/05/12(水) 09:46:38.57ID:1N3VwigT
>>580
> イミフ
> /bin/sh が dash なLinuxディストリは普通にあるし。なんでそんな環境をと言い出すのかイミフすぎ

その返しならイミフだろうなぁ
bash さえも入れたくない/Busyboxだけで極力少ないRAM/ROMで動作させる環境であって
PCやサーバではないよ

RAM が限られている環境だと1つでも bash スクリプトがあると dash と bash 両方で RAM を食って
しまうから、それならば /bin/sh を bash にしてしまった方がまだ軽いってなってしまう

そうなってくると「bash で書きたい人はシェバンに #!/bin/bash って書けば良いじゃん」で済まないわけ
で全部 dash 互換で書く必要がでてくる

シェバンに #!/bin/sh って書いてある他人が書いたスクリプトが bash 互換なのか dash 互換なのか
明示されていない以上、#!/bin/sh=dash 環境に移植する場合は書き直すか動作検証する必要がある

動作検証が終わったら #!/bin/dash って書きかえないと、そのファイルを引き継いだ人がまた
同じ作業を繰り返すことになるって考えよ
2021/05/12(水) 11:42:09.27ID:UQubkL4X
>>586
何がもわからんくせに調べもしないくせに
ismの何が問題かもわからんくせに
自分が納得できないだけかよ、能書き小僧煩い
まあお前が納得できなくてそうするんだったら勝手にしてもいいぞ、その程度のことなんだろし
2021/05/12(水) 11:49:29.28ID:UQubkL4X
>>587
ん?
>極論だが古典的なシステムでは /bin/sh は POSIX 準拠でさえないんだから
に対して、
>今時の /bin/sh の最低限度がPOSIXなんだよ
に対して、
>bash じゃなくて dash を使わざるを得ないような極小環境で現役なものはどこにあるの?
だよ?流れからイミフだな
で、今度は
>bash さえも入れたくない/Busyboxだけで極力少ないRAM/ROMで動作させる環境であって
と言い出すの?イミフのイミフだぞ(その後の延々としたのもw)

現在は、/bin/sh は POSIX shell というのが大勢、dash はそれになり得るというのが大勢
違うとお前ら個々が思うのは勝手にどうぞだが、それを理解しろと他人に求めるのは筋違いだな
そんなに自説に自信があるならDebianやfileのメーリングリストで問題提起してみ?w
2021/05/12(水) 12:38:28.94ID:1N3VwigT
>>589
お前は「/bin/sh = dash が正義」って言いたいだけで
碌に文章も読まずに喧嘩さえ売れればOKな返しをしてるだけ

もっとちゃんと読め
話にならん
2021/05/12(水) 13:04:20.69ID:UQubkL4X
>>590
何を言い出してるんだか
現在最も近い=最適なのがdashというだけだぞ。開発元がそういう姿勢なんだからそういう方向になるようにはするだろうという当たり前に読めそうなもんだが

喧嘩とかお前にそのまま返すわ。お前が何言いたいのかわからんぞ?
>>589でなんでそう返すのかさっぱだわ。喧嘩wに負けたくないだけか?w

しっかし、柔軟性が無いな。その「単なる自説」の拘りぶりは。なんとか原理主義者に通じるものがあるな
同類か?
2021/05/12(水) 13:15:48.40ID:1N3VwigT
>>591
そもそも 587 の内容は /bin/sh = ash/dash で頑張ってたけど
途中で /bin/sh = bash で行かざるを得ない/組込でも bash
入れざるを得ないなってなった事を説明しているわけで
589 の指摘を言われる所以は無い

君は同じスレのなかの時系列さえ読み解けない程読解力が低いんだよ
ちゃんと読めぐらいいわせろ
2021/05/12(水) 13:17:56.91ID:UQubkL4X
>>692
そんな急に知識自慢wされても、は?となるだけだよ
そんな自分の頭だけの流れを読めというのは無理があるでしょ
で?何を言いたいの?
2021/05/12(水) 13:18:56.70ID:UQubkL4X
>>593
>>692
>>592
すまん
2021/05/12(水) 13:23:30.78ID:1N3VwigT
>>593
いや、だから君は読解力がない/坊主憎けりゃ袈裟まで憎いで会話にならない、と
2021/05/12(水) 13:26:48.40ID:UQubkL4X
>>593
そのレスから明らかにお前が自分の頭で思ったことが他人にもわかると思ってるな
>坊主憎けりゃ袈裟まで憎い
イミフwまた何を言っているんだか
だからお前は何を言いたいの?そんなイミフなこと言わずに書いてよ

自称読解力があるらしいのになんで俺に言っていること理解できないの?
(自称のそれは多分それは読解力ではなくて妄想力だと思われるけど)
2021/05/12(水) 13:29:39.37ID:UQubkL4X
>>596
なんで間違えるかなあw
>>593
>>595
誤 >なんで俺に言っていること理解できないの
正 >なんで俺の言っていること理解できないの
なんかとてもすまん
2021/05/12(水) 13:43:37.39ID:1N3VwigT
>>597
>なんで俺の言っていること理解できないの
君は相手をディスる単語は使うが、なぜディスってるのかは説明しないんだから
理解してもらえないのは当然でしょ

「自分で調べろ」「バカと会話するだけ無駄」というレスのは解の一つではあるが
それを使うのであれば書き込んだ後はとっととスレ/板から去れよ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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