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

■ このスレッドは過去ログ倉庫に格納されています
2020/03/23(月) 01:12:30.31ID:TYte82vJ
シェルスクリプトに関する総合スレッドです。

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

シェルスクリプト総合 その32
https://mevius.5ch.net/test/read.cgi/tech/1571929725/
2020/04/25(土) 23:31:42.54ID:gS2ps0hn
他の言語だったらそういうのはBooleanでしか使わないという文化な人々も居る
[ -z "$str" ] や [ -n "$str" ] よりも [ "$str" = "" ] とか [ "$str" != "" ] の方が見る機会が多かったな
238デフォルトの名無しさん
垢版 |
2020/04/25(土) 23:59:47.04ID:Ey2ZfVC3
>>236
先頭にマイナス記号が入らないことが保証されるのならいいのでは?
2020/04/26(日) 00:16:24.29ID:D7tlSM02
>>238
関係ないでしょ? その場合こう展開される
[ "-z" ] または [ "-n" ] これはどちらも文字列があるから0

[ ] で囲まれた中身が1個の場合は決してオペレータとして扱わないのだから
どんな文字が来たとしても問題ない。空文字以外は0となる
ついでにいうと [ ] の中身が0個の場合は常に非0

そもそも [ ] (test)のドキュメントに
STRING は -n STRING と等価と書かれている
仕様通り
240デフォルトの名無しさん
垢版 |
2020/04/26(日) 03:16:05.39ID:cVjuSaki
>>239
他の条件とand/orされる場合は?
2020/04/26(日) 03:17:32.99ID:D7tlSM02
>>240
-a と -o に関しては、shellcheckさんが禁止しております
[ 略 -a 略 ] は使いません。必要なら [ 略 ] && [ 略 ] こうします
242デフォルトの名無しさん
垢版 |
2020/04/26(日) 03:29:33.94ID:cVjuSaki
>>241
そういう独自ルールを適用するならそれで良いんじゃねえか?
ただ独自ルールだからそれとセットで説明する必要がある。
2020/04/26(日) 04:31:48.38ID:D7tlSM02
>>242
ん?でもさ -a とか -o 使っても問題ないんじゃね?
[ str -a ] みたいなのってありえないんだからさ[ -a -a ] もないでしょ?
[ -a -a -a ] だと 最初と最後が文字だって一意に識別できるよね?

訂正する
> 他の条件とand/orされる場合は?

他の条件とand/orされる場合 かつ 混乱するようなパターンってありえるの?
244デフォルトの名無しさん
垢版 |
2020/04/26(日) 04:38:33.47ID:cVjuSaki
>>243
シェルというかtestコマンドってそんなに賢く自動判別してくれるの?
これからそういうシェルまたはtestコマンド作るって話?
だったら作ればいいんじゃね?そうすればそれはそういうものですって言えるしそれでokだ。
2020/04/26(日) 04:48:09.65ID:D7tlSM02
なんでシェルをディスってるの?
これからも何も「testは賢く判断するから問題ないよね」って聞いてるだけなのに
2020/04/26(日) 04:53:55.28ID:D7tlSM02
>>244
こういえば良いのか?
POSIXで決まっている仕様どおりの正しい動きです。
これから作る必要など全くありません。
247デフォルトの名無しさん
垢版 |
2020/04/26(日) 04:56:34.45ID:cVjuSaki
あ、そう。じゃあそれでいいんじゃね?
2020/04/26(日) 06:08:44.50ID:D7tlSM02
何が気に食わないんだろう(笑)
2020/04/26(日) 14:42:15.32ID:v6fWLjMY
>>236と同一人物に見えて俺流儀の押し付けしたいのか何をしたいのかだろな
2020/04/26(日) 15:26:53.79ID:D7tlSM02
質問者 (POSIX準拠の仕様)これ問題ある?
回答者 問題あるに決まってるだろ。あれとかこれとかどうなんだ?

質問者 それらは問題ないよね?
回答者 お前の流儀を押し付けるな!

なんだこのながれ
2020/04/26(日) 15:35:41.02ID:UR76YMSe
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\
2020/04/26(日) 15:55:10.56ID:D7tlSM02
まともなレスじゃなくて、個人たたきに変わったからな
POSIXの仕様にたいして俺流儀とかアホかと
2020/04/26(日) 18:41:28.13ID:vc5fDz2w
それ以上POSIXを唱えるな
奴が来る
254デフォルトの名無しさん
垢版 |
2020/04/28(火) 06:27:22.31ID:6K6MgdzD
ハクション大魔王2020は面白いな。
2020/04/28(火) 08:02:31.62ID:w59d7UdO
俺流儀に見えたってことはそういうことでは
虚栄心だけじゃ何も学べないよねぇ
2020/04/28(火) 08:18:47.52ID:+3UriQww
詠唱




────POSIX準拠



 
2020/04/28(火) 13:15:20.29ID:85h3VPXT
宗教みたいだぁ…(直喩)
258デフォルトの名無しさん
垢版 |
2020/04/28(火) 15:22:47.80ID:7mVXavmj
宗教だろ…(直球)
2020/04/29(水) 07:41:19.70ID:kBxqIvnv
お前のログインシェルをfishにしてやろうか
2020/04/29(水) 13:35:45.09ID:CfLIzb8G
>>259
それはPOSIX準拠?
2020/04/29(水) 14:00:43.59ID:/shWL0SW
ねたにまじれす
2020/04/29(水) 18:18:56.88ID:i2PPpjMR
最近Oil ShellのPOSIX準拠度が高まってきて嬉しい(これはネタじゃない)
2020/04/29(水) 18:42:59.47ID:cpDKktQc
メジャーリリースしたら教えてくれ
2020/04/29(水) 20:13:29.94ID:sus1L+2H
POSIX準拠度が完全になったら教えてくれ
2020/04/29(水) 20:20:23.45ID:sus1L+2H
ち、やっぱり set -uしたときにecho ${A+x} ってしたら
fatal: Undefined variableで落ちるじゃねーか
変数が定義されているかのチェックすら出来ねぇ
2020/04/29(水) 21:34:42.01ID:i2PPpjMR
>>265
そこでissueですよ
2020/04/29(水) 22:37:55.93ID:sus1L+2H
>>266
立て逃げしていいならするけどさ、やり取りが面倒なんだよ
この程度ででるぐらいなら他にも問題たくさんありそうだしstar多いんだろ?誰かが頑張ってくれ
それかすでにあるんじゃねーの?OilShellがどこまで本気なのか知らんが、
まがりなりにもPOSIX準拠を名乗りたいのなら絶対には対応していないといけない
基本機能だからな。(変数定義確認方法のFAQレベルだぞこれは)
俺にとっては数あるシェルの一つでしかないし別件で忙しい
2020/04/30(木) 01:05:28.49ID:vtgsH/Bs
POSIX互換を謳う俺々シェルの利点って何なの
わざわざ作るってことは今のPOSIXは不備あるのか
2020/04/30(木) 07:55:57.21ID:zGlfElvR
>>268
今のPOSIXに不満があったらPOSIX準拠シェルなんて面倒なもの態々作らんと思うが
2020/04/30(木) 08:09:08.08ID:04alJDEx
作るだろ?不満があったから新しいものを作る
ただし移行パスがなければ移行しないのでその方法を提供する
よくある話だ
2020/04/30(木) 12:57:36.00ID:pg6Bqb9H
>>270
たぶん「準拠(互換)」の部分について言及してるんだと思うよ
272デフォルトの名無しさん
垢版 |
2020/04/30(木) 13:50:18.05ID:VId2oWrE
>>268
https://www.oilshell.org/blog/2018/01/28.html
273デフォルトの名無しさん
垢版 |
2020/04/30(木) 14:31:36.43ID:gdZAiUWY
学術の巨大掲示板群 - アルファ・ラボ
ttp://x0000.net

数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など

PS 連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
274デフォルトの名無しさん
垢版 |
2020/04/30(木) 14:31:36.48ID:gdZAiUWY
学術の巨大掲示板群 - アルファ・ラボ
ttp://x0000.net

数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など

PS 連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
2020/04/30(木) 19:17:59.10ID:0zEyt4z5
POSIX
抽出レス数:28

スレタイに【POSIX】いれとけよ
2020/04/30(木) 19:21:05.71ID:04alJDEx
>>275

>>1より
> ・特記なき場合、POSIX準拠シェルが既定です(古きBourneシェルはほぼ絶滅しました)
>  特定のシェルの専用機能に依存する場合は明示しましょう(特にPOSIX準拠シェルではないfish, (t)csh等)

別にPOSIX前提ではない。レス28は多くない。
2020/04/30(木) 22:12:56.14ID:3EPTcWkg
posix準拠かどうかを自動判定するプログラムはないのか?
2020/04/30(木) 23:40:43.12ID:02DTS3d8
bash、tcsh、zsh などが持つ拡張機能を持たない
POSIX互換を目指す
シェルで -n で
2020/05/01(金) 12:30:18.70ID:xBnPf/RZ
>>275
例えば「C言語総合スレ」で
ISO CやJIS Cについての言及が全スレ中10%を占めていたとして,
そのことを以って「スレタイにISO C/JIS Cって明記しろ!」って言う?
いや,言うんだったら,まあ何も言えないけどw
280デフォルトの名無しさん
垢版 |
2020/05/02(土) 20:03:36.40ID:nkPqW+JC
Oil Shellって実装されてない機能、実は多くね?
どこかに一覧でまとめられてるじゃないかと思うんだけど
わかってて未実装なのか、忘れられてるのかどっちなのかわからん
報告すべきなのかどうか
2020/05/02(土) 20:48:38.90ID:SU0LbRTW
「実は」っていうか,べつに公式に「POSIXに完全準拠しました!」なんて言ってねーしなw
ただ単に着実に対応していっているっていう,それだけ。
まだ1.0ですらないし,何を期待してるんだか。
282デフォルトの名無しさん
垢版 |
2020/05/02(土) 21:33:14.83ID:nkPqW+JC
うん。聞いてるのは実装されてる機能されてない機能の一覧ね
いい加減、反論されたクソって!思い込んで突っ走るのはやめようよw
2020/05/02(土) 23:08:33.17ID:DEDgA8fc
自己紹介
2020/05/03(日) 12:41:29.86ID:Wpoh2lE+
Oilシェルに親でも殺されたのかな?(すっとぼけ)
2020/05/10(日) 09:42:55.33ID:6Ru0pW3/
fishって、プロセスの生成にposix_spawnを使っていると小耳に挟んだのですが。
macOS等、fork+execよりposix_spawnが速いとされる環境で使ったらbashとかより
性能が上がったりしますかね?
286デフォルトの名無しさん
垢版 |
2020/05/10(日) 14:52:33.76ID:wRm6C2I1
1ミリ秒ぐらいは上がるんじゃね?w
2020/05/10(日) 18:28:06.52ID:pQcD5gxy
では、赤射プロセスをもう一度見てみよう
288デフォルトの名無しさん
垢版 |
2020/05/10(日) 19:18:19.90ID:JqEAqVcs
>>285
https://github.com/fish-shell/fish-shell/issues/3149#issuecomment-226923645
289デフォルトの名無しさん
垢版 |
2020/05/12(火) 11:30:45.83ID:yS+J4vmz
このシェルスクリプトは面白そう
https://www.youtube.com/watch?v=v80QzGYktK8
2020/05/12(火) 16:59:01.34ID:nXypJmVq
実装が面白いのかと思ったら発想が面白かった
291デフォルトの名無しさん
垢版 |
2020/05/17(日) 19:47:04.17ID:bpPzQdIC
https://qiita.com/twrcd1227/items/35c4cdc12581b75204a5

> マジックナンバー
> マジックナンバーとは#!のこと
> シェルスクリプトの先頭には以下のようになんのシェルを使うのか明示する。

ばーかw
2020/05/17(日) 20:43:06.44ID:09BYrd1c
直接コメントしたれよ。こんなとこで晒すとか、くれえやつだな
マジックナンバー自体も知らないアレだとしても
293デフォルトの名無しさん
垢版 |
2020/05/17(日) 22:09:25.20ID:cPnKiUuj
https://en.wikipedia.org/wiki/Shebang_(Unix)#Magic_number
2020/05/18(月) 02:25:23.58ID:JVwpbSde
本人登場かという勘違いぶり
2020/05/18(月) 11:03:25.77ID:hn05DOX5
なんつーか、入門書としては酷いから訂正しなけれいけないレベルだが
初心者が頑張って背伸びして書いていると思うと
それをめためたに指摘しまくるのも大人げないんだよなw

と思ったが、
https://qiita.com/twrcd1227/items/b7d6e16aa4e9f895a831
> 入門UNIXシェルプログラミングを読んでいく

これ、本当にこの本に書いてあることなのか?
この本有名だし流石にそんなことはないと思うが

> % echo $SHELL #今使ってるシェルの種類を調べる
真っ先から間違いなんだよな。
× 今使ってるシェル
○ ログイン時のシェル。例えばbashでログインしてzshに切り替えてもbashのまま
2020/05/18(月) 11:05:59.88ID:vvPis8aR
>>291
これがマジックナンバーじゃなかったら何をもって ELF と
シェルスクリプトの違いを判断している?
2020/05/18(月) 11:28:16.49ID:vvPis8aR
>>295
ログインシェル zsh にしてログイン後に bash 起動したらSHELL が /bin/bash にならね?
「ログイン時のシェル」は流石に「今使っているシェル」よりなお悪いんじゃねーか?

各シェルの SHELL (と shell) の変数に関する実装によるが比較的今使っているシェル
だろうとみなせる、というほうがまだ正しそう。

文脈を見てみないとわからんが、プログラム側からシェルの種類を気にするのは
ssh-agent みたいに環境変数のセットのためのコードを返すプログラムぐらいだから
csh 系ユーザかどうかだけ拾うって程度で、細かい所までは考えてないでしょ
2020/05/18(月) 13:55:14.67ID:hn05DOX5
>>296
マジックナンバーが#!(シバン)のことなのではなく
#!(シバン)がマジックナンバー(の一種)

違いわかる?


「アルコールとは酒のこと」といえば間違ってると理解できる?

あ、これアルコールって書いてある!つまり酒だな!ごくごくって
(消毒用)アルコールを飲むやつはアホだろう
2020/05/18(月) 13:56:31.78ID:hn05DOX5
>>297
> bash 起動したらSHELL が /bin/bash にならね?

なぜそこで質問する?
わからないなら自分で調べろよ。

質問じゃないなら「/bin/bash になる」とお前は言うはずだ
2020/05/18(月) 14:00:45.61ID:hn05DOX5
ま、お前程度のやつが知らなくても仕方ないな。
有名な某あのツールですら十数年?も前から
間違っててバグ放置されてるんだしなw
(最近報告されてたんで俺は報告しないよ)
2020/05/18(月) 14:22:20.13ID:vvPis8aR
>>300
顔真っ赤にして連騰して恥ずかしい奴だなぁ、お前
まずはログイン時のシェルにならない事について謝れよ
2020/05/18(月) 14:41:09.47ID:hn05DOX5
>>301
https://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap08.html

SHELL
This variable shall represent a pathname of the user's preferred command language interpreter.

はい、ばーか確定(笑)
2020/05/18(月) 16:08:58.16ID:vvPis8aR
>>302
すまん、リンク先は見ていないがその英文で「ログイン時のシェル」と解釈
しているのかな、君は?

恥ずかしい書き込みしたんだから ID ぐらい変えて書き込もうよ。
2020/05/18(月) 21:10:24.48ID:hn05DOX5
>>303
じゃあ逆にお前は何を持って自分が正しいと思ってんだ?
なにか一つでも証拠を持ってこれるのか?
これないだろ?先に言っておく。俺はあと一つ証拠を持ってこれる。
謝るなら今のうちだぞ?
2020/05/19(火) 00:50:38.43ID:4QqJ5tyy
出だしが>>296と無知ぶりを発揮してのでよく頑張るなと思わせるw
2020/05/19(火) 08:40:51.02ID:+8IfJNam
>>304
その証拠って、ログインシェルを zsh にしてログイン後に bash 起動しても
SHELL 環境変数が zsh になってる件ですかね?w
2020/05/19(火) 10:14:32.16ID:zOKQOBke
>>306
反論したいんでしょ?あなたの意見の根拠を聞いてるんですが、そっちはどうしたんですか?
(私が主張していることを証明している)事実だけを言われても困るんですがw
2020/05/19(火) 11:45:35.05ID:+8IfJNam
>>307
根拠あげろって最初に挙げたでしょうに。
俺の環境ではログインシェルを zsh にしてログイン後に bash 起動したけど
SHELL 変数は /bin/bash でしたよ?
309デフォルトの名無しさん
垢版 |
2020/05/19(火) 12:42:00.98ID:zOKQOBke
>>308
それと同じことを言ってる人をググって見つけてこれる?
そういうのが根拠。誰もいないよね。

「俺は○○だ」は根拠じゃなくてお前の主張
その主張の根拠を見つけてきてって言ってるのに
主張を繰り返されても困るw
2020/05/19(火) 15:11:40.95ID:+8IfJNam
>>309
お前の環境で実行しろよオイ
ファビョり方に無理が出てるなあとは思ったが流石にもうお前は終わりだ
311デフォルトの名無しさん
垢版 |
2020/05/19(火) 15:14:56.79ID:O4jzhFRD
むかし北斗の拳というアニメがあったのだが、「お前はもう死んでいる!」と言った瞬間、ケンシロウの頭が「プシャー、ヒデブ!」ってなるような人が、掲示板には居るよね。
ふと思っただけで、特定の誰かを指して言うわけじゃないのだが。
312デフォルトの名無しさん
垢版 |
2020/05/19(火) 16:11:09.24ID:41YM3k+D
>>310
もう飽きた。トドメさしとくね

SHELL environment variable still points to zsh after using bash
SHELL環境変数は、bashを使用した後もzshを指します
https://unix.stackexchange.com/questions/522907/shell-environment-variable-still-points-to-zsh-after-using-bash

SHELL is an environment variable that is passed from bash to zsh when you call zsh.
SHELL is not one of the Parameters Set By The Shell in zsh, so its value remains intact.

SHELLは、zshを呼び出すときにbashからzshに渡される環境変数です。
SHELLはzshのシェルによって設定されるパラメーターの1つではないため、その値はそのまま残ります。


man login

ユーザ ID とグループの ID は /etc/p@sswd ファイル中に記載されている値に従って設定される。
$HOME, $SHELL, $PATH, $LOGNAME, $MAIL の値は、パスワードエントリのそれぞれの
フィールドに従って設定される。 ulimit, umask, nice 値が、 GECOS フィールドの
エントリーによって設定されることもある。
313デフォルトの名無しさん
垢版 |
2020/05/19(火) 16:14:39.49ID:41YM3k+D
https://unix.stackexchange.com/questions/71121/determine-shell-in-script-during-runtime

You can use the command:

$ echo $SHELL
to find out the shell from within the script.

No. $SHELL is the shell of choice of the user. Initialised from the login shell of the user.
Nothing to do with the currently running shell.

いいえ。$ SHELLはユーザーが選択するシェルです。ユーザーのログインシェルから初期化されます。現在実行中のシェルとは関係ありません
314デフォルトの名無しさん
垢版 |
2020/05/19(火) 16:16:06.85ID:41YM3k+D
man bash

SHELL この環境変数にシェルのフルパス名が保存されています。
シェルを起動したときに設定されていない場合は、 bash が現在のユーザのログイン
シェルのフルパス名を代入します。
2020/05/19(火) 17:04:50.75ID:Yw4hD4hb
POSIXシェルの\x80--\xFEあたりのバイト列の取り扱いって,何か規定されてます?
\x00--\x7Fの取り扱いについては
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap06.html#tag_06_04
ここに載ってるけど。
2020/05/19(火) 17:40:08.90ID:+8IfJNam
ミスリードさせる気まんまんの書き込みばかりして
頑なに自分の環境での実行結果は貼らないのはなんで?w

『「アルコールとは酒のこと」といえば間違ってると理解できる?』
って書き込んだ奴はどこに行った?
2020/05/19(火) 18:30:30.69ID:3kLN/2rB
>>316
いい加減傍目からもお前が何をしたいのかわからん
延々となぜか丁寧に説明されているのに、何を言い張ってるんだか。さらにぶり返すとか本当に読めないんだな、色々と
2020/05/19(火) 19:00:31.56ID:3kLN/2rB
せいぜい、延々と正しい説明してるw方の間違いは「ログイン時のシェル」と言ったことだけだな
自ら挙げた>>302の user's preferred command language interpreter という方向にそれも>>312,313で捕捉されてるし
まあ、後で手動でユーザがSHELLを変える設定することも(ほとんど)ないからログイン時のシェルでも通じるだろうけど

>>297は全くの誤りだけどw
319デフォルトの名無しさん
垢版 |
2020/05/19(火) 19:56:07.96ID:8HY/3oGP
「慶應卒の学歴なんていらない」10代起業で成功する子の共通点
https://www.excite.co.jp/news/article/President_35457/
起業で成功するキャリア形成の仕方とは? 元プロサッカー選手で起業家の鈴木啓祐氏に聞いた
https://sogyotecho.jp/career-development/
【アプリ開発で起業】必要な心得とマネタイズ方法のすべて
https://www.dreamgate.gr.jp/contents/column/application-development
学生起業家が開発、「人を軸に本を探すアプリ」とは?読書通じて「考える力」養って
https://newswitch.jp/p/20168
島田商高生がアプリ考案、発表 ICT起業家育成プログラム
https://www.at-s.com/news/article/local/central/730010.html
医師コンビが「治療用アプリ」で起業、禁煙に続き高血圧治療アプリを開発
https://diamond.jp/articles/-/229375
好きが高じて“カレー起業”、キャッシュレス決済アプリ「TOKYO MIX CURRY」の挑戦
https://diamond.jp/articles/-/215868
2020/05/19(火) 20:30:16.61ID:+8IfJNam
>>318
>>302 を示す際に素直に『「Preferred ... 」であってログインシェルじゃなかったわ、すまん』
って書けばそこで終わった話ですよ? なぜこのタイミング?

> まあ、後で手動でユーザがSHELLを変える設定することも(ほとんど)ないからログイン時のシェルでも通じるだろうけど
都合よく解釈しすぎ。 もう一度書くけど
『「アルコールとは酒のこと」といえば間違ってると理解できる?』
って書き込んだ奴はどこに行った?
2020/05/19(火) 20:45:45.83ID:3kLN/2rB
俺は違うからな、お前に延々と付き合っていたのとは

お前は全く間違いの反論でだから、お前がどう挙げつらおうがお前の責め手にはならんだろう、何を勝ち誇って(?)いるんだか
お前自身で、その未だに言い出してる自分の間違いを認め誤りの訂正お礼なんぞもしてないくせに
自分の大きな間違いをごまかす消化するために小さな間違いをあげつらってるだけだな、しつこく繰り返してるとこからは
322デフォルトの名無しさん
垢版 |
2020/05/19(火) 21:56:10.07ID:41YM3k+D
>>318
> の間違いは「ログイン時のシェル」と言ったことだけだな

諦めて読めな?

> man bash
>
> SHELL この環境変数にシェルのフルパス名が保存されています。
> シェルを起動したときに設定されていない場合は、 bash が現在のユーザのログイン
> シェルのフルパス名を代入します。
323デフォルトの名無しさん
垢版 |
2020/05/19(火) 21:58:18.44ID:41YM3k+D
つまり>>308のこれが嘘だったってこと

> 俺の環境ではログインシェルを zsh にしてログイン後に bash 起動したけど
> SHELL 変数は /bin/bash でしたよ?
2020/05/19(火) 22:12:04.54ID:3kLN/2rB
>>322
>>318の最後の行でそれを補足してるんだがな

>>302の user's preferred command language interpreter
で間違いないだろう、それ以上でもそれ以下でもない。ログインシェル自体が(ユーザデフォルトの) user's preferred command language interpreter だから&それしか多分設定するとこがないから、ログインシェルが設定されてるだけかな

手動で、今の俺の気分はログインシェルとは違うこのシェルなんだと、
SHELL=なんか
sudo -s
user's preferred command language interpreter が実感できなくね?

で、bashではそう書いてあるらしいが、(ほぼなんもしてない)dashってどうなってるんだろうと、ソースをチラ見した限りはそんな風なとこちょっと見えないな。OSがなのかな?

ああ、もちろん>>323なんてのは嘘(逆にどんな環境やねん)、dashでもSHELLに設定されてるし、そこからbashを起動してもSHELLはbashのパスには変わらない
325デフォルトの名無しさん
垢版 |
2020/05/19(火) 22:15:18.55ID:41YM3k+D
>>324
何をごちゃごちゃ言ってるのか知らんけど、

> 俺の環境ではログインシェルを zsh にしてログイン後に bash 起動したけど
> SHELL 変数は /bin/bash でしたよ?

↑これはman bashからみて絶対にありえないし
SHELL環境変数はログイン時のシェルなんだよ

まさか(自分で変更したら)ログイン時のシェルじゃない!
とか言いたいんか?
326デフォルトの名無しさん
垢版 |
2020/05/19(火) 22:18:59.32ID:41YM3k+D
> dashでもSHELLに設定されてるし、
それはどこに書いてあんの?
ソースコード見たなら書いてある場所ぐらい言えるよね
327デフォルトの名無しさん
垢版 |
2020/05/19(火) 22:20:16.13ID:41YM3k+D
訂正
× まさか(自分で変更したら)ログイン時のシェルじゃない!
○ まさか(ログイン後に自分でSHELL変数の内容を変更したら)ログイン時のシェルじゃない!
2020/05/19(火) 22:21:16.50ID:3kLN/2rB
>>325
何をムキになってるんだかwお前の読めない読まない病かよ?
ser's preferred command language interpreter
で間違いないだろう、それ以上でもそれ以下でもない。変数の意味だろ、そもそもは
意味としては、ログインシェルじゃないのも設定できる、ser's preferred command language interpreter だって話だよ

誰も、bashで変わるなんて言ってないのに、何を言い出してるんだか
2020/05/19(火) 22:22:53.62ID:3kLN/2rB
>>326
OpenBSD、FreeBSD、Ubuntu
で、そうなるって話
dashのソース中にはチラ見ではちょっとそういうのを設定しているとこは見えないけどって話。どこでやってんのかなあって話
2020/05/19(火) 22:24:45.56ID:3kLN/2rB
まさか、こんな展開になるとは思わんかったな。なんでムキになってるんだか
2020/05/19(火) 22:33:25.89ID:Yw4hD4hb
>>315
議論中すいません。ageます
2020/05/19(火) 22:36:50.04ID:+8IfJNam
man と実装が違っているのは確認してるよ
でも事実複数バージョン(bash 4.2系/4.4系)でこの動きをするんで
「zsh をログインシェルでbash起動したら SHELL が bash に
なった」発言を撤回するのは難しいね

特に >>302 の内容が決定的に撤回困難にしている
これは君が示した文書で、君を苦しめているのは君自身
ちがうか?

君の手元の環境で発生しているだろう?
小説に出てくるクソ弁護士のような論調はやめたまえ
2020/05/19(火) 22:45:31.09ID:3kLN/2rB
>>332
どんな環境やねん
こっちで確認できる複数の環境でそんなのならんから、嘘としか思えんぞ
自分で環境がとかいいだしてるんだから、言えよw
仮にbash4だけの話なら、bash3、bash5ではそうならんから、bash4のバグじゃないの?bash4ってなんでやねん
2020/05/19(火) 22:46:32.45ID:3kLN/2rB
>>331
https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xbd_chap06.html
「ここに載っている」のはそういうことらしい。その中でも規定されてるのはって話かな、上記のは
それ以外は特に制御文字としては扱わない。\x00--\x7F内でも言及してないのは
\x80--\xFEなんてロケール/キャラクターセット依存だからそれぞれのキャラクターセット/文字コードでの話だろう。もちろんその中に制御文字なんてないんじゃないかな
2020/05/19(火) 22:53:45.57ID:3kLN/2rB
>>332,333
あ、Ubuntu 18.04 TLS のはまだ bash 4.4.20 だった
そんな動きにはならんな。嘘だなww
2020/05/19(火) 22:54:59.35ID:fsFcCZSO
>>332 bash_profile あたりに SHELL=/bin/bash とか書いてるんじゃないの?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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