[過去ログ] シェルスクリプト総合 その31 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1(3): デフォルトの名無しさん [sage] 2019/08/10(土) 23:17:50.64 ID:L+B8OP2P(1/5) AAS
シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
シェルスクリプト総合 その30
2chスレ:tech
978: デフォルトの名無しさん [sage] 2019/10/26(土) 11:34:25.41 ID:3fttRo5u(6/9) AAS
>>976976(1): デフォルトの名無しさん [sage] 2019/10/26(土) 11:32:55.31 ID:Q5pTtErv(4/8) AAS
俺は他alias使ったのやのその話題は、なにをわざわざ凝ったことしようとしてるのか意図不明で趣味なんだろなとしか思ってない
趣味(実用的ではないネタコード)に、正当っぽい理由をつけるなって話だ
979: デフォルトの名無しさん [sage] 2019/10/26(土) 11:36:44.02 ID:Q5pTtErv(5/8) AAS
ただの雑談だろ
あれを強制するなりしているわけでもないのに、なにをそう否定してんだか
そんなヤツがリアルで一緒に仕事するなら思いっきりくそ叩くがなw
980: デフォルトの名無しさん [sage] 2019/10/26(土) 11:37:51.16 ID:3fttRo5u(7/9) AAS
あとC言語の世界しか知らんようだから言っておくと、rubyは0も1もtrueな
シェルスクリプトは反対で0がtrueで1がfalseなんだ、それ以外の回答はない!ってのは
ちょっと考えが浅いんじゃないですかねぇw
外部リンク:osishow3.hateblo.jp
nil is false
false is false
0 is true
1 is true
981: デフォルトの名無しさん [sage] 2019/10/26(土) 11:39:18.03 ID:Q5pTtErv(6/8) AAS
何をひとりで妄想に走っているんだか
だれか「いいかげんにしろ」とか言ってなかったか?w
982: デフォルトの名無しさん [sage] 2019/10/26(土) 11:42:23.29 ID:3fttRo5u(8/9) AAS
俺に突っかかってきてないで、シェルスクリプトの話題をしたら?
983: デフォルトの名無しさん [sage] 2019/10/26(土) 11:43:40.40 ID:Q5pTtErv(7/8) AAS
よくいうよw
984: デフォルトの名無しさん [sage] 2019/10/26(土) 11:47:29.21 ID:3fttRo5u(9/9) AAS
そりゃいうだろ、いきなりシェルスクリプトと関係ない
「俺」の話を始めるんだからw
985: デフォルトの名無しさん [sage] 2019/10/26(土) 11:50:09.04 ID:Q5pTtErv(8/8) AAS
言ったことに対してはそりゃ言うだろう。お前がわざわざ言ったんだから
そんなのが無くてもいいのに。お前だった元々のやつを「アホ」呼ばわりしてるじゃん
986: デフォルトの名無しさん [sage] 2019/10/26(土) 15:54:12.94 ID:0I+FrAtF(3/8) AAS
>>975975(3): デフォルトの名無しさん [sage] 2019/10/26(土) 11:29:02.54 ID:3fttRo5u(5/9) AAS
質問が出てる時点で、意図がわからないコードってことなんだがw
957 名前:デフォルトの名無しさん[sage] 投稿日:2019/10/24(木) 17:49:17.77 ID:mthfJT/n [2/3]
>>954
それってTRUE=0とするのと何が違うの?
それに>>954ののコードは、set -eで正しく動かない
TRUE=$([ 0 = 0 ];echo $?)
FALSE=$([ ! $TRUE ];echo $?)
意図が不明確なコードを書いて、バグを入れるのは
アホでしか無いよ
set +e
TRUE=$([ 0 = 0 ];echo $?)
FALSE=$([ ! $TRUE ];echo $?)
set -e
動かんと言ってる方がアホだと思う
987: デフォルトの名無しさん [sage] 2019/10/26(土) 16:04:47.31 ID:+M+pJ73c(1/9) AAS
set -eで正しく動かない
↓
set +eと書いて動くと主張。赤っ恥w
988: デフォルトの名無しさん [sage] 2019/10/26(土) 16:15:33.38 ID:0I+FrAtF(4/8) AAS
逃げ方がチョン臭くてキモい
989: デフォルトの名無しさん [sage] 2019/10/26(土) 16:17:36.78 ID:+M+pJ73c(2/9) AAS
しかも、最初の状態が set +e だったら
set -e に状態が変わってしまうというクソコード
汎用性がない
990: デフォルトの名無しさん [sage] 2019/10/26(土) 16:20:27.41 ID:+M+pJ73c(3/9) AAS
true / false を使えばいいのに、[ が入ってない環境を考慮せずに、
true / false が入ってないかもしれないから [ を使ったと言う無能ぶりw
991: デフォルトの名無しさん [sage] 2019/10/26(土) 16:22:55.60 ID:0I+FrAtF(5/8) AAS
最初にset -eするとルール化するだけ
いちゃもんつけるの得意だな
992(1): デフォルトの名無しさん [sage] 2019/10/26(土) 16:24:16.70 ID:0I+FrAtF(6/8) AAS
[]やtestが使えないシェル教えてくれよ
993: デフォルトの名無しさん [sage] 2019/10/26(土) 16:25:06.04 ID:+M+pJ73c(4/9) AAS
TRUEの反対だからfalseというが、
FALSEの反対もfalseになってると気づいてなくて
そもそもシェルスクリプトの仕様をわかってないw
[ 0 = 0 ]; echo $? # => 0
[ ! 0 ]; echo $? # => 1
[ ! 1 ]; echo $? # => 1
994(1): デフォルトの名無しさん [sage] 2019/10/26(土) 16:27:23.30 ID:+M+pJ73c(5/9) AAS
>>992
上の方で /bin/true, /bin/false コマンドがあるんだから
true, false が使えないシェルがあるはずだって主張していたぞw
その理屈で言えば [ コマンドもあるんだから、 [ が使えないシェルもあるってことになるんだがなw
995: デフォルトの名無しさん [sage] 2019/10/26(土) 16:28:56.67 ID:+M+pJ73c(6/9) AAS
更に言うなら
TRUE=$([ 0 = 0 ];echo $?)
FALSE=$([ ! $TRUE ];echo $?)
これにサブシェルを使うのもアホらしいw
996(2): デフォルトの名無しさん [sage] 2019/10/26(土) 16:29:21.39 ID:0I+FrAtF(7/8) AAS
>>994
cshのbuiltin調べてこい
分かったらすいませんって言えよw
997: デフォルトの名無しさん [sage] 2019/10/26(土) 16:29:57.11 ID:+M+pJ73c(7/9) AAS
>>1みろ
csh/tcshでのシェルスクリプトは*まったく推奨しません*。
998(1): デフォルトの名無しさん [sage] 2019/10/26(土) 16:30:08.87 ID:0I+FrAtF(8/8) AAS
あーいつものマウントとらないと死ぬ病気のやつか
おだいじに
999: デフォルトの名無しさん [sage] 2019/10/26(土) 16:30:30.62 ID:+M+pJ73c(8/9) AAS
>>1じゃなくて>>22(3): デフォルトの名無しさん [sage] 2019/08/10(土) 23:19:50.86 ID:L+B8OP2P(2/5) AAS
お約束
・特記なき場合、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: 外部リンク[euc]:www.speech-lab.org)
・POSIX に準拠しましょう
有用なリンクは 外部リンク:en.wikipedia.org にまとめられています。
最新の仕様はこちらへ: 外部リンク:pubs.opengroup.org
(左上の「Shell & Utilities」から各コマンドやファイルの仕様を参照することができます)
・Version 7 UNIX の sh(1) に一番近いのは OpenSolaris 由来の Heirloom sh、次点で Debian などに搭載されている Dash shell
Heirloom sh: 外部リンク[html]:heirloom.sourceforge.net
Dash shell: 外部リンク:gondor.apana.org.au
・UNIX にはシェルスクリプトに便利な小さなコマンドがいろいろあります
Man ページや各種リンク(外部リンク[html]:pubs.opengroup.orgなど)を見ましょう。
apropos(1) ないしは man(1) の-kオプションでそれらしい単語による簡単な検索もできます。
・ワイルドカードは正規表現ではありません。
正規表現の話題はスレ違い(正規表現スレへ)
・シェルスクリプトのことをシェルってゆうな
だったな
> ・特記なき場合、POSIX 準拠の sh 可換シェルが既定です。(Bourne Shellは既にレガシーです)
1000: デフォルトの名無しさん [sage] 2019/10/26(土) 16:30:49.43 ID:+M+pJ73c(9/9) AAS
>>998
マウント取られて可愛そうwww
1001(1): 1001 [] Over 1000 Thread AAS
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 76日 17時間 12分 59秒
1002(1): 1002 [] Over 1000 Thread AAS
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
外部リンク:premium.5ch.net
▼ 浪人ログインはこちら ▼
外部リンク[php]:login.5ch.net
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.328s*