TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
MSX-BASICの奥義を伝授するスレ
C++は難しすぎ 難易度:4
【初心者歓迎】C/C++室 Ver.103【環境依存OK】
GARMIN社のGPSのプログラム
インデントを強制しても綺麗なコードにはなりません
ふらっと C#,C♯,C#(初心者用) Part139
Pythonのお勉強 Part62
JAVAってこんなことも出来ないの?
文字コード総合スレ Part12
オブジェクト指向ってクソじゃねぇかよPart4

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


1 :
シェルスクリプトに関する総合スレッドです。

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

シェルスクリプト総合 その30
https://mevius.2ch.sc/test/read.cgi/tech/1561989867/

2 :
お約束
・特記なき場合、POSIX 準拠の sh 可換シェルが既定です。(Bourne Shellは既にレガシーです)
 つまりシバンは #!/bin/sh です。
 特定のシェル(bash, zsh, (m|pd)ksh, (d)ash, yash, posh, fish, (t)csh など)の専用機能に依存する場合は明示しましょう。
  macOS (10.14以前), GNU/Linux ユーザー(Debian, Ubuntu 系以外) は /bin/sh の実体が bash なので*特に*注意
   自覚なき bashism---シバンが #!/bin/sh なのに bash に依存する構文を使っていませんか?
   ただし Debian, Ubuntu などでは /bin/sh の実体は POSIX sh 互換の dash ですのであまり気にしないでも大丈夫です。
  FreeBSD ユーザーは /bin/sh の実体が ash なので注意。
  Solaris, OpenBSD ユーザーは /bin/sh の実体が ksh なので注意。
  macOS 10.15以降のユーザーは/bin/sh の実体が zsh なので注意。
  android ユーザーは /bin/sh の実体が mksh なので注意。
 csh/tcshでのシェルスクリプトは*まったく推奨しません*。
  (参考URL: http://www.speech-lab.org/~hiroki/csh-whynot.euc
・POSIX に準拠しましょう
 有用なリンクは https://en.wikipedia.org/wiki/POSIX にまとめられています。
 最新の仕様はこちらへ: http://pubs.opengroup.org/onlinepubs/9699919799/
  (左上の「Shell & Utilities」から各コマンドやファイルの仕様を参照することができます)
・Version 7 UNIX の sh(1) に一番近いのは OpenSolaris 由来の Heirloom sh、次点で Debian などに搭載されている Dash shell
  Heirloom sh: http://heirloom.sourceforge.net/sh.html
  Dash shell: http://gondor.apana.org.au/~herbert/dash/
・UNIX にはシェルスクリプトに便利な小さなコマンドがいろいろあります
 Man ページや各種リンク(http://pubs.opengroup.org/onlinepubs/9699919799/idx/utilities.htmlなど)を見ましょう。
 apropos(1) ないしは man(1) の-kオプションでそれらしい単語による簡単な検索もできます。
・ワイルドカードは正規表現ではありません。
 正規表現の話題はスレ違い(正規表現スレへ)
・シェルスクリプトのことをシェルってゆうな

3 :
初心者へのアドバイス
・適した道具を判断するのも頭の重要な使い方。
 シェルスクリプトよりも Per lまたは Python の方が適した処理にはそちらを使いましょう。
・知らないコマンドが出てきたら man(1) を引きましょう。
・思い通りに動かないときは、まずは sh(1) の -x オプションでトレースしましょう。

回答者への注意事項
・相手がシェルスクリプトでの処理方法を質問しているのにもかかわらず、よく知りもせずに「そういうのはPerl, Python使え」と回答するのはやめましょう。
 安易に Perl や Python に逃げずに小さなコマンドを組み合わせシェルスクリプトで処理するのが頭のいいやり方。
・質問に対して問題が間違ってるといちゃもんをつけるのも避けましょう。
・例に対して、その例だけ動くコードを書くのはやめましょう。例は例です。本当に実現したいことを文章から読み取りましょう。

4 :
参考リンク

Bourne shellの種類とか歴史とかシェルの挙動とかいろいろ詳しい
https://www.in-ulm.de/~mascheck/

5 :
関連スレ

【Bash】Windows Subsystem for Linux【WSL】6
https://mao.2ch.sc/test/read.cgi/linux/1560665525/

Bashでプログラミング [転載禁止](c)2ch.sc
https://mao.2ch.sc/test/read.cgi/linux/1443885102/

シェルスクリプト総合 その28
https://mevius.2ch.sc/test/read.cgi/unix/1533154936/

zsh その7
https://mevius.2ch.sc/test/read.cgi/unix/1337844883/

【POSIX】UNIXプログラミング【BSD】 [転載禁止](c)2ch.sc
https://mevius.2ch.sc/test/read.cgi/unix/1443103705/

6 :
【POSIX】 sh系互換 シェルスクリプトスレ
https://mevius.2ch.sc/test/read.cgi/tech/1535195112/

7 :
テンプレの「Version 7 UNIX の sh(1) に一番近い」ってそんな根拠ある?
むしろ「POSIX shを最もよく実装してる」ほうが適切な表現じゃね?

8 :
>>7
Heirloom shのことだとして(意図的だろうけど)POSIX shではなく
レガシーなBourne shellに近いから「Version 7 UNIX の sh(1) に一番近い」なんだよ

つまり、Version 7 UNIX の sh(1) は Bourne shell。
具体的には ArithmeticExpression $((1+2)) や
Parameter substitution のうち ${p#foo} や ${p%bar} みたいな
POSIXの仕様を実装してない。

9 :
もちろん次点のdashはPOSIX shを実装してる。
「最も」かどうかはしらんけど

10 :
>>8
いや根拠ある?(公式文書内の発表とかで。無い気がする。)
しつこくてごめんね。小さいことが気になる性格なの。

Most scripts that run in the Heirloom Bourne Shell will run with any Unix shell that is still in use in the twenty-first century.
http://heirloom.sourceforge.net/sh.html

11 :
>>10
根拠を自分で考えるってことができない性格なんだねw

12 :
Version 7 UNIX の sh(1)やHeirloom Bourne Shellが
「POSIX shを最もよく実装してる」という根拠はないよね
(公式文書内の発表とかでw)

13 :
http://heirloom.sourceforge.net/sh.html
> Although the Bourne shell is not POSIX-conforming
意訳 The Heirloom Bourne Shellは POSIXと互換性がありません

14 :
(あ、これ、いつもの人かな?推論能力が圧倒的に低くて、書いてある内容から
「ゆえにThe Heirloom Bourne Shellは POSIXと互換性がない」を導き出せない)

15 :
前スレ埋めてこいよw

16 :
>>14
ワロタw
お前のそれは「推論」じゃなくて「論理の飛躍」だよ

17 :
あー、やっぱり読み取れないんだ・・・

18 :
かわいそうだから、せめて日本語訳にしてあげるね。

家宝ボーンシェル
家宝のBourneシェルは、伝統的なUnixシェルのポータブル変種です。
OpenSolarisコードから派生している ため、SVR4 / SVID3レベルのシェルを実装しています。

Bourneシェルは

・スクリプトの移植性テスト。
POSIX.2標準は既存のBourneシェルの動作と互換性のないシェルの要件を導入したため、
BourneシェルはPOSIX準拠ではありませんが、すべてのUnixシェルスクリプト言語の父のままです。
Heirloom Bourne Shellで実行されるほとんどのスクリプト は、21世紀にまだ使用されているUnixシェルで実行されます。
POSIX準拠でBourneシェルで使用可能なシェルスクリプトを記述するのは比較的簡単です。

・レガシースクリプトの処理。
いくつかの歴史的なスクリプトは、Bourneシェル独自の言語機能を使用していました。
それらをポータブルシェル言語に変換するのは難しい場合があるため、
Bourneシェルを使用して実行するのが便利な代替手段です。

・一般的なスクリプト処理。
Bourneシェルは、新しいUnixシェルほど多くの機能を提供しませんが、それでも非常に使いやすいスクリプト言語です。
また、Bourneシェルの言語は20年近く安定しており、この実装でも引き続き安定しています。
これにより、プログラマーが慣れ親しんだBourneシェルは驚くことのないスクリプト言語になります。
これは、新しいシェルの多くとは言えません。

・インタラクティブな使用。
Bourneシェルは、jshとして呼び出され 、端末で実行される場合、ジョブ制御を提供します。
もちろん、コマンド履歴、コマンドライン補完などの派手な機能はありません。しかし、これらの機能を使用すると、
ユーザーの注意をそらす傾向があります。慣れの段階の後、Bourneシェルを使用すると、
より均一で集中的な作業スタイルになります。試してみる。真剣に。

19 :
これで(他の人は)理解できたやろ?w

20 :
ムキーってなってるの?そんなに連投して

21 :
あそんでるだけやで、昨日からの続きで

22 :
お前かわいいな

23 :
でも他人が同じようなことしたらムキーっとなってると言うよねえ

24 :
>>7,10
derived from OpenSolaris code and thus implements the SVR4/SVID3 level
だから、Version 7 UNIX というのはいきなりっぽい
Version 7 UNIX の sh の重要性がまったくわからんが、SVR4 よりは重要、Version 7 UNIX の正当な流れを汲んだうちでの(ソースレベルで?)一番近いから、Version 7 UNIX としたんじゃないかな、そもそもソコを書いた人は

SVID3 は POSIX以前の時期での標準を作ろうとした規格のようなので、「POSIX shを最もよく実装してる」は無いんじゃないかな。SVID3とPOSIXの差異近似がわからんけど

あんま興味ない(使うことはないから)けどチラっと調べた範囲では。調べてもあんま興味わかないなw

25 :
いや〜他人を怒らせないようにしてるんだけど
その当の他人がチガイだとどうしようもないなw

26 :
「ムキー!ボクの意見と違うことを言うやつなんて嫌いだー!」

27 :
落ち着こうなw

28 :
>>24
> Version 7 UNIX の sh の重要性がまったくわからんが
それな。

「Version 7 UNIX の sh(1) に一番近いのは〜」を最初に書いた当時は
まだレガシーなシェルスクリプトが存在したのかもね
このスレ元々UNIX板にあったわけだし

Heirloom shも(世間がPOSIX準拠になりつつある中)
レガシーなスクリプトを処理するために作った書かれてるし
日付を見ると2010年の話?

一般に商用UNIXと呼ばれるもの(macOSは含めない)が
閉鎖的で情報が共有されなくて、質問されても誰も確認できないでしょ?
Linuxばかり使われるようになった。だからその文章も時代に合わない。
次からは修正しておくよ。

29 :
テンプレで質問

> ・ワイルドカードは正規表現ではありません。
みんなワイルドカードって呼ぶ? MS-DOSではワイルドカードって言ってたけど
なんとなく最近聞かない気がする。かと言ってグロブと呼ぶか?というとそれも詳しい人ぐらいしか

> ・思い通りに動かないときは、まずは sh(1) の -x オプションでトレースしましょう。
-xオプションと似たやつに-vってのがあるんだね。
みんな使ってる? 俺は使ってみるも、たくさん実行がでてきて面倒くさくて結局見なかったことにしちゃうw

30 :
/bin/shの実体が/bin/bashになってる環境がなかったから時間がかかった。
今作ってやってみたけど、やっぱり、bashだとecho -n helloは
(POSIXにはない)-nを認識するね。

# which sh
/bin/sh
# /bin/sh
sh-3.2# ls -l /bin/sh
lrwxrwxrwx 1 root root 19 Aug 11 09:14 /bin/sh -> /usr/local/bin/bash
sh-3.2# sh --version
GNU bash, version 3.2.57(1)-release (x86_64-unknown-linux-gnu)
Copyright (C) 2007 Free Software Foundation, Inc.
sh-3.2# sh
sh-3.2# echo -n hello
hellosh-3.2# exit
exit
sh-3.2# bash --posix
bash-3.2# echo -n hello
hellobash-3.2#

前スレ>>996はMacかな? (x86_64-apple-darwin18)って書いてるからそうだろうね。
Macの環境はビルドがおかしいのか時折変な動きをする。

31 :
ええぇ、自分でMacもって言ってなかったかな?
元レスの人のがが何かはわからないが、その可能性はなくもない、だったらの話だが
エアプで見栄であれもこれもと羅列しただけ?w

32 :
へー、たしかに、macOS Mojaveのデフォルト(homebrewではない)のbash 3.2.57だと
echo -n hello が -n hello になるねw

これはひどいwww
なんでだろ。ちょっと調べてみるか。

その前に一言。だからPOSIX準拠で作れと言っただろー!

33 :
それはお前の自説。うっかりだとしたらしょうがないで済む話

34 :
てか、自分で確認できるくせにいろいろ妄想吐いていたのどうすんの?

35 :
>>31
デフォルトはHomebrewのbashに切り替えてるのでね。

まさかbashで同じバージョンなのに、Linuxで-nを改行なしオプションと認識して
macOSだと-nを解釈しないとは思わなかった。

まだぐぐってないけど、これ話題になってるんじゃね?

36 :
>>33
そういうお前の自説を述べられてもw

37 :
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\

38 :
ああ、
>/bin/shの実体が/bin/bashになってる環境がなかったから時間がかかった
って。ああ、ツッコミどころ満載。わくわくしてきだぞw
そんなグダグダのヤツの傲慢な偉そうなご高説、誰が聞くかっw

39 :
>>31
デフォルトと/bin/shは違うんですけど。/bin/shも書き換えてんのか。OSのアップデートで書き換えられるのに。まあ、ご自由にだから、いちおう信じてあげようw
でも、オマ環を理由にするのは情けないw

結局Appleが悪いにして自分のアホな妄想を否定するのはないんだな。さすがだよ

40 :
>>39
× >>31
>>35

とりあえずあれだな。馬鹿な妄想で馬鹿にした自分が大馬鹿でしたと言いなさいw

41 :
(macから書き込んでるからID変わってるかも)

まずmacの/bin/shはシンボリックリンクではなく、
またファイルサイズが違っているので /bin/bash と完全に同じものでは無いのがわかる
(おそらくビルドオプションの違いだろう)

$ ls -al /bin/sh /bin/bash
-r-xr-xr-x 1 root wheel 618416 5 4 16:04 /bin/bash
-r-xr-xr-x 1 root wheel 618480 5 4 16:05 /bin/sh

にもかからわず、同じバージョン番号を名乗っている
(ビルドオプションが違うだけだから当然ともいえるが)

$ /bin/sh --version
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin18)
Copyright (C) 2007 Free Software Foundation, Inc.

$ /bin/bash --version
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin18)
Copyright (C) 2007 Free Software Foundation, Inc.

そして想像つく通り、echo -n の挙動が違う

$ /bin/sh -c 'echo -n hello'
-n hello

$ /bin/bash -c 'echo -n hello'
hello%

42 :
だろ?そう言ってたんだけど。なに追試してんの?確認できてどうすんの?

Appleが悪いでうやむやに?

43 :
>>39
デフォルトっていうのは、OSのデフォルトシェルの話じゃなくて
デフォルトで使ってるシェルって意味だよ。
bash だけで起動するシェル。ログインシェル。

44 :
ユーザ作った時のシェルもデフォルトシェルです。てか、そこはいいよ。信じてあげるって言っているんだから

そんなのじゃなくてな、もっと前にお前がレスしたのを始末つけろよ。なんで逃げる?w

45 :
>>42
お前の理屈は、

1. 前スレ>>975は、Macを使ってるに違いない!
2. だけど実行したら動かないから、実行してないに違いない!
3. だから、うっかり #/bin/sh にしてしまったに違いない!
4. コピペもしてない!

という根拠ない想像に基づくものだろ?


俺の理屈は「普段から Macでecho -n を使ってる人なら
Macでecho -nが動かないのを知らないはずがない」から
普段、echo -n が動く環境を使ってる。というお前とは正反対の前提なんだよ。

だからecho -nの部分に書き間違いはなく
[[ ]] がbash依存であることを知らなかったという結論

46 :
いや、その俺の攻撃はいいから、お前のやらかしたのを始末つけなさい

47 :
やっぱりどこでも動くシェルスクリプトなんて幻想なんだね…

48 :
まあおかげでPOSIX準拠にするべき理由が一つ増えたじゃないかw

同じbashを使っていても、挙動が違う場合がある
POSIX準拠で書きましょう

49 :
>>46
なにもやらかしてないけど?

50 :
>>47
bash依存するとそうなるだけw

51 :
>>ID:++HFlOfG
なんで逃げる、やらかしたのは明らかだろう。カスなのか?
まあ、想像できるよ、常時偉そうにしたいんだもんな。普通のレス、単純なミスに対してもたかーいところからのいきなりなダメだしとか普通だもんな。そんなお前が自分の過ちを認めたらプライドがズタズタにでもなるんだろう

...カスだなw

52 :
宣言

今度から、echo -n を見かけたら、それはPOSIX準拠してないので
printfを使いましょうと書き込むことにする。

53 :
>>51
お前、文句言ってるだけじゃんw
やらかしてる部分はどこかを書けば、
やらかしてないという説明をしてあげるよ?

54 :
>>49
異常だな。自分に強く言われたらすぐ反発するくせに。自分で何をどう言っているのかわかってないのか

てかそういうフリなんだろうな。>>51のままだな

55 :
>>53
自分のレスを見直しなさい
自分の過ちがわからないのによく高慢に他人の過ちをあげつらえられるなあ

まあ、もうわかった。この繰り返ししかないだろうから、カスだと確定します

56 :
http://hints.macworld.com/article.php?story=20071106192548833
> This is not a bug. As OS X 10.5 is now certified to follow the Single Unix Specification, its /bin/sh and echo builtin now follow the specification

なるほど。OSX 10.5から仕様変更されたっぽい。

これAppleがオレオレパッチ当ててるのでは?
bash標準ではなさそうな気がする。

流石にAppleのオレオレパッチまではしらんてw

57 :
な?さっきから俺はシェルスクリプトの話題をしてる。

ID:k+c7cOcw は、俺の話題しかしてない(笑)

58 :
逃げるばっか。自分でMacも使ってるそのためにもPOSIXとかのたまってたのに

59 :
10.4まではmacOSのbashは-nを改行なしと認識していたそうだ

> In fact, I tried echo -n from bash and sh on my 10.4 system and my Linux system and in all cases,
> the -n was recognised as a switch. On both of those machines, /bin/sh and /bin/bash were identical (in fact, on the Linux box, /bin/sh was a symlink).

60 :
>>57
俺はとうに終わってるもん。お前もその俺のレスにレスしてんですけど?さすがだな

61 :
(ごまかしたくてしょうがないのがアリアリ)

62 :
>>58
古いbashはLinuxで検証してるからね。
macでHomebrew使わないってありえんでしょ?
macではbashも古い3.2.57じゃなくて5.0.7を使ってるよ。

63 :
>>60
> お前もその俺のレスにレスしてんですけど?さすがだな

誰にレスしてるかではなくてレスの内容な。
お前は俺の話しかしてないけど、
俺は皆に役立つようにシェルの話をしてる。

64 :
>>57と言っておいて我慢できなくて>>62なのか?>>58もお前だけの話題だけど?そのレスもオマ環の説明って、お前だけの話題だろうw

オマ環でそういうことをしていても、macOS使ってるなら/bin/shがbashだとわかっているだろうに。なぜ/bin/shをbashにする環境作るのがとかのたまうのかわからん。たいした使ってない=Macももただ並べただけだなという「俺の印象」w
てか、そのオマ環を理由にするのは辞めなさい、いつもの高慢なお前には情けないw

65 :
>>63
意味わからんwさすがだな。POSIX原理主義者はやっぱり変なヤツと思うことにするぞw

66 :
ああ、やらかしたのをうやむやにするためにか...なるほど

67 :
確認取れた。やっぱり-nを改行なしと認識しないのは、bashの動きではなく
Appleによるパッチみたいだ

http://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 :
>>64
お前が俺にグダグダ言ってる間に答えを見つけたよ。

オマ環じゃなくて、macOS環境

お前は、bashは-nを認識しない(そのまま-nと出力される)と言っていたが、
それが間違いだとわかったよ。

bashは-nを改行なしオプションとして認識するのは正しい。(俺が今までLinuxで検証していたとおり)
ただしAppleがビルドした改変版bashでは、 Single Unix Specificationに準拠するために
POSIXでは規定されてない-nをそのまま出力されるようになってる。

まあこういう違いがあるから、やっぱりPOSIX準拠は大切だね。

69 :
>>67
俺のレスをよく読もうな。書いてからお前がイチャモンwつけたんだからな

Macを持ってないとかならまだ許すが、自分で自らそのためにもPOSIXというひとつに挙げておいて、確認もせず、オマ環を自分で作ってそれも忘れ、
いろいろ忘れ、トンチキな妄想を吐いていたにもかかわらず、なかったことに&なにか知らんがwごまかしとしか思えないまったく真摯な態度が皆無なヤツです、いつもの高慢ちきは
と(改めてw)証明wできたので、満足しとくわw

70 :
>>68
何を言いたいのかわからんが、現象は変わらない。そしてお前の間違いは変わらない

な?こういうやつだな、やっぱり

71 :
>>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 :
>>71
トンチンカンすぎるな。めちゃくちゃ。最後だぞw安心しろww

/bin/shの実体が/bin/bashになってる環境がなかったから時間がかかった
Macあるやん、macOS使ってお前ほどの自称知っている人なら知ってるハズだろ

だよ。なにをトンチンカンなことを。まあ、わかるよ、ごまかすのに必死なのは。アホらしい

73 :
相手は神様なんだから敬ってやれよ

> From: [36] デフォルトの名無しさん <sage>
> Date: 2019/08/11(日) 16:10:55.15 ID:++HFlOfG
>
> 現実世界では私は神なのだ

74 :
>>69
> 確認もせず、オマ環を自分で作ってそれも忘れ、

前スレ>>975でコードが書かれてから
お前は「macOS環境のbash」とは一言も言わず、
bashの場合としか言っておらず、

>>996で書いた実行ログの中にapple-darwinという文字が含まれていたのを
俺が見つけたっていう事実を忘れてないか?w

75 :
>>73
なにそれww
オモロイとおもって書いたのかな?マジだったらオモロイんだけど

76 :
>>72
> /bin/shの実体が/bin/bashになってる環境がなかったから時間がかかった
> Macあるやん、

Macでは/bin/shの実体は/bin/bashではない。バイナリが違ってる。
ってさっき書かなかったか?

77 :
>>75
それはその数個上のレスを見ればわかるよ。

「現実世界では俺は優れたプログラマ」(といわれても証拠ないしなーw)
とか言ってるやつがいたから、そいつに対するレス。

78 :
>>73
そのひとレスなのね。まあ、なんだ...まあ、いや、わからんwww
まあ、いいや

79 :
この話スレ建てる前に知りたかったなー。

 macOS (10.14以前), は /bin/sh の実体が (Apple改変版)bash なので*特に*注意

って書き直したい

80 :
これはひどいwww

http://moriyoshi.はてなぶろぐ.com/entry/20090208/1234108045

> Leopard の「ターミナル」で、/bin/sh の echo -n がおかしい挙動を示します。
>
> 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 の動きがかわるらしいです。

81 :
やっぱりどこでも動くシェルスクリプトなんて妄想なんだねw

82 :
POSIX準拠を意識してない未熟ものにとってはそうなんだろうな

83 :
POSIX準拠を意識している者にとっては、-nが使えないとか
想定の範囲内だからね。yashとか使えないわけだし。
だから最初から-nを使うぐらいならprintfを使ってる。
POSIX準拠でコードを書いてる人にとっては何ら問題ないわけ

84 :
あれだけアホ晒しても僕偉いww

85 :
俺が偉く見えてしまうのは、あんたの主観だから俺にはどうしようもないw

86 :
>POSIX準拠を意識してない未熟もの
不特定多数が含まれるというのがわからないのね
さすがあれだけアホ晒しても僕偉い人ww

87 :
不特定多数が含まれるからなんだっていうんだろう?

88 :
すげえよっ、さすがあれだけアホ晒しても僕偉い人ww脳の中身理解不能

89 :
なんでスレ進んでたのかと思ったらまたはしゃいでたのか

90 :
神様なんだろ。許してやれ
(しかしネットは怖いな。やらかしたことがほぼ一生残る。)

91 :
なにやらかしたの?

92 :
よくわからん。揚げ足で騒いでるように見える。

93 :
揚げ足というか、単に普通の失敗(理解不足)なんだけどな。
謝らないのが問題だった。
素直に謝罪しておけばよかったものを…。

94 :
謝罪しろって韓国かよw

95 :
Mac特有の挙動(UNIXの要求に合わせるためにAppleが独自で変更してる)なのに
それに気づかないで、bashでは-nに対応してないって騒いでたんだっけ?

96 :
そう。挙句の果てに、Macでテストしてなかった
お前が悪いとか言って荒らし始めた。

97 :
自分に都合が悪くなるとすぐ韓国とかよく分からんこと持ちだして話を逸らすあたり,
これは重症っすね……。

98 :
これは人が離れて行くのも無理はないな

・自分の誤りを絶対に認めない
・人間関係は上下の主従関係のみで平等の概念がない

どこかで見たことあるような...おや、誰か来たようだ

99 :
たしか前スレでも、質問してる側が下なんだから
回答する側に対してへりくだれ的なことを言ってたよな

100 :
これだな。平等の概念がない

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
対等じゃないよ。金を出す側と受け取る側と同じだもの。同じわけがないじゃん。
君はなんでそんな現実と食い違う思想を持ってるんだ?それでは人とのトラブルになるだけで世の中渡っていけんだろう。


100〜のスレッドの続きを読む
リーダブルコーディング技術スレ
CoffeeScript
Javaはもう死んだの? Part.2
Androidプログラミング質問スレ revision53
C++Builder相談室 Part21
Rust Part6
【会津】パソコン甲子園2004【若松】
0から始める2chブラウザfor超漢字 "2ch de BTRON"
次世代言語13 COBOL Java PHP VBA Ruby
ますたーのお勉強中の独り言スレ
--------------------
ブレーキにまつわる懐かしい話
☆柏でうまい居酒屋★その1
★【交換】情報商材 共有交換スレ【共有】その45
【連続二桁で】御嶽海 久司32【目指せ大関】
ドンキ ストイックPC イチキュッパ!(19800) 2
【杉原千畝と】八百津町・丸山ダム4【池井戸潤】
ポケモソ同人ヲチスレ21
☆模試偏差値90でも司法書士試験は難しい3
肴24440
追い詰めた行政書士試験!ぷっちアドバイス部約245
【NMB48】矢倉楓子 応援スレ☆63【ふぅちゃん】
【固定】ピストを語るスレ ブレーキ64個【街乗り】
些細だけど気に障ったこと Part261
至高のマシンX68000のゲームについて語るスレ33
札幌市中央区の穴場な飲食店を教えて!!
獨協大学経済学部の本田浩邦は女子学生にセクハラをしている
ロレはキライだけどブレゲ最高
有能だった総理大臣
【武漢加油!】マスクや防護服、日本の援助に「いいね」 中国で15万超 ネットで感謝の声が広がる
長澤まさみ「品性下劣ああ言えば上念司は自殺しろ」三橋貴明「在日朝鮮人乙」浜矩子「逆神乙」
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼