シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
シェルスクリプト総合 その32
https://mevius.5ch.net/test/read.cgi/tech/1571929725/
シェルスクリプト総合 その33
■ このスレッドは過去ログ倉庫に格納されています
2020/03/23(月) 01:12:30.31ID:TYte82vJ
314デフォルトの名無しさん
2020/05/19(火) 16:16:06.85ID:41YM3k+D man bash
SHELL この環境変数にシェルのフルパス名が保存されています。
シェルを起動したときに設定されていない場合は、 bash が現在のユーザのログイン
シェルのフルパス名を代入します。
SHELL この環境変数にシェルのフルパス名が保存されています。
シェルを起動したときに設定されていない場合は、 bash が現在のユーザのログイン
シェルのフルパス名を代入します。
315デフォルトの名無しさん
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
ここに載ってるけど。
\x00--\x7Fの取り扱いについては
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap06.html#tag_06_04
ここに載ってるけど。
316デフォルトの名無しさん
2020/05/19(火) 17:40:08.90ID:+8IfJNam ミスリードさせる気まんまんの書き込みばかりして
頑なに自分の環境での実行結果は貼らないのはなんで?w
『「アルコールとは酒のこと」といえば間違ってると理解できる?』
って書き込んだ奴はどこに行った?
頑なに自分の環境での実行結果は貼らないのはなんで?w
『「アルコールとは酒のこと」といえば間違ってると理解できる?』
って書き込んだ奴はどこに行った?
317デフォルトの名無しさん
2020/05/19(火) 18:30:30.69ID:3kLN/2rB318デフォルトの名無しさん
2020/05/19(火) 19:00:31.56ID:3kLN/2rB319デフォルトの名無しさん
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
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
320デフォルトの名無しさん
2020/05/19(火) 20:30:16.61ID:+8IfJNam321デフォルトの名無しさん
2020/05/19(火) 20:45:45.83ID:3kLN/2rB 俺は違うからな、お前に延々と付き合っていたのとは
お前は全く間違いの反論でだから、お前がどう挙げつらおうがお前の責め手にはならんだろう、何を勝ち誇って(?)いるんだか
お前自身で、その未だに言い出してる自分の間違いを認め誤りの訂正お礼なんぞもしてないくせに
自分の大きな間違いをごまかす消化するために小さな間違いをあげつらってるだけだな、しつこく繰り返してるとこからは
お前は全く間違いの反論でだから、お前がどう挙げつらおうがお前の責め手にはならんだろう、何を勝ち誇って(?)いるんだか
お前自身で、その未だに言い出してる自分の間違いを認め誤りの訂正お礼なんぞもしてないくせに
自分の大きな間違いをごまかす消化するために小さな間違いをあげつらってるだけだな、しつこく繰り返してるとこからは
322デフォルトの名無しさん
2020/05/19(火) 21:56:10.07ID:41YM3k+D >>318
> の間違いは「ログイン時のシェル」と言ったことだけだな
諦めて読めな?
> man bash
>
> SHELL この環境変数にシェルのフルパス名が保存されています。
> シェルを起動したときに設定されていない場合は、 bash が現在のユーザのログイン
> シェルのフルパス名を代入します。
> の間違いは「ログイン時のシェル」と言ったことだけだな
諦めて読めな?
> man bash
>
> SHELL この環境変数にシェルのフルパス名が保存されています。
> シェルを起動したときに設定されていない場合は、 bash が現在のユーザのログイン
> シェルのフルパス名を代入します。
323デフォルトの名無しさん
2020/05/19(火) 21:58:18.44ID:41YM3k+D324デフォルトの名無しさん
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のパスには変わらない
>>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環境変数はログイン時のシェルなんだよ
まさか(自分で変更したら)ログイン時のシェルじゃない!
とか言いたいんか?
何をごちゃごちゃ言ってるのか知らんけど、
> 俺の環境ではログインシェルを 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変数の内容を変更したら)ログイン時のシェルじゃない!
× まさか(自分で変更したら)ログイン時のシェルじゃない!
○ まさか(ログイン後に自分でSHELL変数の内容を変更したら)ログイン時のシェルじゃない!
328デフォルトの名無しさん
2020/05/19(火) 22:21:16.50ID:3kLN/2rB >>325
何をムキになってるんだかwお前の読めない読まない病かよ?
ser's preferred command language interpreter
で間違いないだろう、それ以上でもそれ以下でもない。変数の意味だろ、そもそもは
意味としては、ログインシェルじゃないのも設定できる、ser's preferred command language interpreter だって話だよ
誰も、bashで変わるなんて言ってないのに、何を言い出してるんだか
何をムキになってるんだかwお前の読めない読まない病かよ?
ser's preferred command language interpreter
で間違いないだろう、それ以上でもそれ以下でもない。変数の意味だろ、そもそもは
意味としては、ログインシェルじゃないのも設定できる、ser's preferred command language interpreter だって話だよ
誰も、bashで変わるなんて言ってないのに、何を言い出してるんだか
329デフォルトの名無しさん
2020/05/19(火) 22:22:53.62ID:3kLN/2rB330デフォルトの名無しさん
2020/05/19(火) 22:24:45.56ID:3kLN/2rB まさか、こんな展開になるとは思わんかったな。なんでムキになってるんだか
331デフォルトの名無しさん
2020/05/19(火) 22:33:25.89ID:Yw4hD4hb >>315
議論中すいません。ageます
議論中すいません。ageます
332デフォルトの名無しさん
2020/05/19(火) 22:36:50.04ID:+8IfJNam man と実装が違っているのは確認してるよ
でも事実複数バージョン(bash 4.2系/4.4系)でこの動きをするんで
「zsh をログインシェルでbash起動したら SHELL が bash に
なった」発言を撤回するのは難しいね
特に >>302 の内容が決定的に撤回困難にしている
これは君が示した文書で、君を苦しめているのは君自身
ちがうか?
君の手元の環境で発生しているだろう?
小説に出てくるクソ弁護士のような論調はやめたまえ
でも事実複数バージョン(bash 4.2系/4.4系)でこの動きをするんで
「zsh をログインシェルでbash起動したら SHELL が bash に
なった」発言を撤回するのは難しいね
特に >>302 の内容が決定的に撤回困難にしている
これは君が示した文書で、君を苦しめているのは君自身
ちがうか?
君の手元の環境で発生しているだろう?
小説に出てくるクソ弁護士のような論調はやめたまえ
333デフォルトの名無しさん
2020/05/19(火) 22:45:31.09ID:3kLN/2rB >>332
どんな環境やねん
こっちで確認できる複数の環境でそんなのならんから、嘘としか思えんぞ
自分で環境がとかいいだしてるんだから、言えよw
仮にbash4だけの話なら、bash3、bash5ではそうならんから、bash4のバグじゃないの?bash4ってなんでやねん
どんな環境やねん
こっちで確認できる複数の環境でそんなのならんから、嘘としか思えんぞ
自分で環境がとかいいだしてるんだから、言えよw
仮にbash4だけの話なら、bash3、bash5ではそうならんから、bash4のバグじゃないの?bash4ってなんでやねん
334デフォルトの名無しさん
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なんてロケール/キャラクターセット依存だからそれぞれのキャラクターセット/文字コードでの話だろう。もちろんその中に制御文字なんてないんじゃないかな
https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xbd_chap06.html
「ここに載っている」のはそういうことらしい。その中でも規定されてるのはって話かな、上記のは
それ以外は特に制御文字としては扱わない。\x00--\x7F内でも言及してないのは
\x80--\xFEなんてロケール/キャラクターセット依存だからそれぞれのキャラクターセット/文字コードでの話だろう。もちろんその中に制御文字なんてないんじゃないかな
335デフォルトの名無しさん
2020/05/19(火) 22:53:45.57ID:3kLN/2rB336デフォルトの名無しさん
2020/05/19(火) 22:54:59.35ID:fsFcCZSO >>332 bash_profile あたりに SHELL=/bin/bash とか書いてるんじゃないの?
337デフォルトの名無しさん
2020/05/19(火) 23:04:14.14ID:3kLN/2rB なるほど....!w
338デフォルトの名無しさん
2020/05/19(火) 23:04:16.77ID:41YM3k+D339デフォルトの名無しさん
2020/05/19(火) 23:05:04.34ID:41YM3k+D340デフォルトの名無しさん
2020/05/19(火) 23:07:18.47ID:41YM3k+D >>332
> 特に >>302 の内容が決定的に撤回困難にしている
> これは君が示した文書で、君を苦しめているのは君自身
> ちがうか?
意味不。 >>302の内容は
SHELL
This variable shall represent a pathname of the user's preferred command language interpreter.
この変数は、ユーザーの優先コマンド言語インタープリターのパス名を表します。
と書いてある通り、ユーザーの優先、つまりログインシェルのこと
それ以外のどういう意味があるんだよ?zshでログインしてbash起動したら
bashがユーザーの優先になるんだ!ってお前は言いたいんか?
> 特に >>302 の内容が決定的に撤回困難にしている
> これは君が示した文書で、君を苦しめているのは君自身
> ちがうか?
意味不。 >>302の内容は
SHELL
This variable shall represent a pathname of the user's preferred command language interpreter.
この変数は、ユーザーの優先コマンド言語インタープリターのパス名を表します。
と書いてある通り、ユーザーの優先、つまりログインシェルのこと
それ以外のどういう意味があるんだよ?zshでログインしてbash起動したら
bashがユーザーの優先になるんだ!ってお前は言いたいんか?
341デフォルトの名無しさん
2020/05/19(火) 23:09:21.26ID:41YM3k+D > dashのソース中にはチラ見ではちょっとそういうのを設定しているとこは見えないけどって話。どこでやってんのかなあって話
SHELL環境変数は基本的に外部から渡される環境変数なんだから、そんなものなくても当たり前
bashは空だった場合に自分で設定しているようだが、それは空だった場合の話で
入っていればなにもしないということ
SHELL環境変数は基本的に外部から渡される環境変数なんだから、そんなものなくても当たり前
bashは空だった場合に自分で設定しているようだが、それは空だった場合の話で
入っていればなにもしないということ
342デフォルトの名無しさん
2020/05/19(火) 23:14:34.20ID:3kLN/2rB343デフォルトの名無しさん
2020/05/19(火) 23:16:01.88ID:41YM3k+D 手元の動作と周りの情報が全部違っていたら、自分の手元が間違ってるって考えないもんかねw
なんで俺の手元で再現させる?再現してないからそれは違うって言ってるに決まってるだろ
常識として「自分の手元だけで発生してる」は信用ならんから
ソースとして外部の情報を参照しろって言ってるのに、こいつは手元しか見ていない
なんで俺の手元で再現させる?再現してないからそれは違うって言ってるに決まってるだろ
常識として「自分の手元だけで発生してる」は信用ならんから
ソースとして外部の情報を参照しろって言ってるのに、こいつは手元しか見ていない
344デフォルトの名無しさん
2020/05/19(火) 23:21:55.33ID:3kLN/2rB345デフォルトの名無しさん
2020/05/19(火) 23:22:13.23ID:41YM3k+D はい。誰でも簡単に再現できます(笑)
bashを起動したところでSHELLは再設定などされません
(dashはSHELLが空の場合は自分で設定などしないんだな)
$ docker run -it debian dash
# echo $SHELL
# export SHELL=abc
# echo $SHELL
abc
# bash
root@58fdfabe096c:/# $SHELL
abc
bashを起動したところでSHELLは再設定などされません
(dashはSHELLが空の場合は自分で設定などしないんだな)
$ docker run -it debian dash
# echo $SHELL
# export SHELL=abc
# echo $SHELL
abc
# bash
root@58fdfabe096c:/# $SHELL
abc
346デフォルトの名無しさん
2020/05/19(火) 23:22:42.25ID:41YM3k+D347デフォルトの名無しさん
2020/05/19(火) 23:24:47.87ID:3kLN/2rB >>346
ww
ww
348デフォルトの名無しさん
2020/05/19(火) 23:25:40.73ID:41YM3k+D debian 7がbash 4.2.37だな
docker run -it debian:7 dash でやればいい。結果は同じだが
docker run -it debian:7 dash でやればいい。結果は同じだが
349デフォルトの名無しさん
2020/05/19(火) 23:29:44.81ID:41YM3k+D いい加減理解したかね?俺なんか数年前に
「あぁ!?SHELLは現在のシェルじゃねーのかよ!
現在のシェルのパスはどうやって調べればいいんだよ!」
で苦労してんだから間違いなわけねーっつーの
「あぁ!?SHELLは現在のシェルじゃねーのかよ!
現在のシェルのパスはどうやって調べればいいんだよ!」
で苦労してんだから間違いなわけねーっつーの
350デフォルトの名無しさん
2020/05/20(水) 00:20:43.81ID:91fxSgSA Windows10, WSL, Ubuntu 18.04 で、やったら、
echo $SHELL
/bin/bash
>>336
/etc/@passwd に、デフォルトシェルが設定してある
ユーザー名:x:1000:1000:,,,:/home/ユーザー名:/bin/bash
echo $SHELL
/bin/bash
>>336
/etc/@passwd に、デフォルトシェルが設定してある
ユーザー名:x:1000:1000:,,,:/home/ユーザー名:/bin/bash
351デフォルトの名無しさん
2020/05/20(水) 00:24:36.85ID:9QbBPRXg こいつは一体誰と戦ってるんだ・・・
352デフォルトの名無しさん
2020/05/20(水) 00:44:53.45ID:InboTxWs353デフォルトの名無しさん
2020/05/20(水) 01:16:06.12ID:2U5TD7Rg WSLは変態だから、bash.exe で(WSLを)起動すると、chsh/passwd直接などでログインシェルを他のにしても無視されて、bashがログインシェル(?)になる。当然、SHELLは/bin/bash
ログインシェルをzshに変えた、bash.exeで起動した、(bashが起動してるしSHELLはすでに/bin/bashだけど、)、コマンドラインでbashを起動した。SHELLが/bin/bashになってる変わった!
とかか?w
WSLでもubuntu.exeで起動したらまともに起動するっぽいし、他の正規のUnix/Linuxと同じ動作にしかならんな
ログインシェルをzshに変えた、bash.exeで起動した、(bashが起動してるしSHELLはすでに/bin/bashだけど、)、コマンドラインでbashを起動した。SHELLが/bin/bashになってる変わった!
とかか?w
WSLでもubuntu.exeで起動したらまともに起動するっぽいし、他の正規のUnix/Linuxと同じ動作にしかならんな
354デフォルトの名無しさん
2020/05/20(水) 10:06:46.91ID:9mY3JetI >>334
thx
thx
355デフォルトの名無しさん
2020/05/20(水) 10:09:40.38ID:9mY3JetI 結局,現在使ってるシェルを確かめる最も可搬で確実な方法って
ps -o comm= -p $$
↑これかな。
ps -o comm= -p $$
↑これかな。
356デフォルトの名無しさん
2020/05/20(水) 10:31:11.68ID:InboTxWs357デフォルトの名無しさん
2020/05/20(水) 13:58:16.99ID:9mY3JetI そりゃ完璧ではないだろうけど。
でもまぁ,「最も」可搬な方法ではあるのよね。
でもまぁ,「最も」可搬な方法ではあるのよね。
358デフォルトの名無しさん
2020/05/20(水) 14:29:26.47ID:InboTxWs 真面目に出力をパースすれば最も可搬になる
359デフォルトの名無しさん
2020/05/21(木) 18:22:14.34ID:eGAQdhfO そうかなぁ。
その出力がシステムの間で共通していないから,出力を指定するオプションを付ける必要があるんだけど,
そのオプションにすら可搬性がない,っていう状況だと認識してる。
>>358
ちなみに「真面目なパース」の例を挙げてほしい。
その出力がシステムの間で共通していないから,出力を指定するオプションを付ける必要があるんだけど,
そのオプションにすら可搬性がない,っていう状況だと認識してる。
>>358
ちなみに「真面目なパース」の例を挙げてほしい。
360デフォルトの名無しさん
2020/05/21(木) 18:33:46.87ID:C3uZcQQo dash,ksh,zshでの、-c でだと、
ps -p $$ は ps 自身になってるんだけど、なんでやねんっと思わなくもない
-c だから別にいいだろうけど
ps -p $$ は ps 自身になってるんだけど、なんでやねんっと思わなくもない
-c だから別にいいだろうけど
361デフォルトの名無しさん
2020/05/21(木) 18:38:04.04ID:C3uZcQQo ああ、(最後の)コマンドをexecしてんのか。納得した
362デフォルトの名無しさん
2020/05/21(木) 19:15:46.38ID:C3uZcQQo ああ、bashもps(というかコマンド一つだけならか?)だけならps自身だったexecしてた
363デフォルトの名無しさん
2020/05/22(金) 10:18:39.53ID:TfVZs9xf ???
364デフォルトの名無しさん
2020/05/22(金) 16:42:02.19ID:ZQuJuyf5 えーと、良かったね。「なんでやねんっ」で終わるよりは。
365デフォルトの名無しさん
2020/05/22(金) 17:19:36.41ID:VBkbngi+ マウントとりの変形
366デフォルトの名無しさん
2020/05/22(金) 20:59:32.61ID:ZQuJuyf5 何のことだ? 自分で調べて納得したなら間違いなく良いことだし、本来そうあるべきだろう。
367デフォルトの名無しさん
2020/05/23(土) 07:51:59.95ID:0T8MjFiT 頓珍漢な擁護してて草
368デフォルトの名無しさん
2020/05/23(土) 11:11:44.65ID:Ify9JmqW >>359
> ちなみに「真面目なパース」の例を挙げてほしい。
1. ps する
2. 一行目を読み取る
3. PIDが1列目、COMMANDが○列目ってわかる
4. 二行目移行を読み取っていく
5. PIDが一致したら、同じ行の○列目を参照する
6. それが起動してるシェルだ
なお、普通にシェルでプログラミングしろ
シェル芸でこれをやろうとするなよ
この程度の処理プログラミングとして考えれば
ほんの数行で終わる簡単な処理なんだが
シェル芸でやろうとして逆に難しくするやつがいる
シェル使ってるやつは、プログラミングができないやつが多い
> ちなみに「真面目なパース」の例を挙げてほしい。
1. ps する
2. 一行目を読み取る
3. PIDが1列目、COMMANDが○列目ってわかる
4. 二行目移行を読み取っていく
5. PIDが一致したら、同じ行の○列目を参照する
6. それが起動してるシェルだ
なお、普通にシェルでプログラミングしろ
シェル芸でこれをやろうとするなよ
この程度の処理プログラミングとして考えれば
ほんの数行で終わる簡単な処理なんだが
シェル芸でやろうとして逆に難しくするやつがいる
シェル使ってるやつは、プログラミングができないやつが多い
369デフォルトの名無しさん
2020/05/23(土) 15:58:02.30ID:ch2ICEVw 「シェルを使う」という表現に一体どんな意味を込めているのやら...
370デフォルトの名無しさん
2020/05/23(土) 17:56:41.50ID:hM7sXxSn371デフォルトの名無しさん
2020/05/23(土) 18:04:41.89ID:31g10QWp コードのコの字も出てないのに。少しはコードがあっての話でしか無いな
372デフォルトの名無しさん
2020/05/24(日) 14:47:54.65ID:Y1ZXEm/L age
373デフォルトの名無しさん
2020/05/24(日) 15:32:04.04ID:0WjVzP+p 入れてみてわかるシェルの良さ
374デフォルトの名無しさん
2020/05/24(日) 15:48:48.76ID:FTfvJDOJ 何入れてるの?
375デフォルトの名無しさん
2020/05/24(日) 16:42:21.69ID:LIiHhrYu fishです(AA略)
376デフォルトの名無しさん
2020/05/24(日) 16:46:49.93ID:FTfvJDOJ fishはPOSIXシェルじゃないから駄目だね
377デフォルトの名無しさん
2020/05/24(日) 20:51:41.67ID:vB1Q/4mw >>368
途中に時間が入っていると面倒なんだな
途中に時間が入っていると面倒なんだな
378デフォルトの名無しさん
2020/05/24(日) 22:40:02.98ID:oexHBYog Nushellがじわじわと来てるらしいよ
https://www.nushell.sh/
https://www.nushell.sh/
379デフォルトの名無しさん
2020/05/25(月) 04:14:56.98ID:sIgPYriA >>377
時間を気にする必要でもあんの?
時間を気にする必要でもあんの?
380デフォルトの名無しさん
2020/05/25(月) 08:11:38.36ID:heJMc7oc381デフォルトの名無しさん
2020/05/26(火) 10:37:11.76ID:DUXfe990 busyboxな環境(tiny core linux)でバックグラウンドプロセスの終了待機を行いたいんですが
psコマンドにPIDを指定する-pオプションがないので途方にくれています。
バックグラウンドプロセスは自分で起動するのでプロセスのPIDは取れてます。
psコマンドの一覧からPIDでgrepすると関係ないのも引っかかる可能性があるため困ってます。
他の手段て何かないでしょうか。
psコマンドにPIDを指定する-pオプションがないので途方にくれています。
バックグラウンドプロセスは自分で起動するのでプロセスのPIDは取れてます。
psコマンドの一覧からPIDでgrepすると関係ないのも引っかかる可能性があるため困ってます。
他の手段て何かないでしょうか。
382デフォルトの名無しさん
2020/05/26(火) 10:48:37.13ID:5zsa2F3Z383デフォルトの名無しさん
2020/05/26(火) 11:01:33.46ID:5zsa2F3Z >>381
どーでもいいけど、なんでバックグラウンドプロセスの終了待機でpsコマンドなんか使うの?
どーでもいいけど、なんでバックグラウンドプロセスの終了待機でpsコマンドなんか使うの?
384デフォルトの名無しさん
2020/05/26(火) 11:10:30.99ID:5zsa2F3Z シェル芸界隈の人間って、psをgrepで〜とか重い方法しか知らないよねw
385デフォルトの名無しさん
2020/05/26(火) 13:11:20.00ID:EtaD8bXQ rubyのspawnで 起動したプロセスを、終了待ちしたり、強制終了したり、親プロセスと一緒に殺す
https://takuya-1st.hatenablog.jp/entry/2016/04/07/040451
Ruby で、子プロセス起動をして、終了待ちをする。
終了待ちするには Process.wait( pid ) か、Process.waitall を使う
i = spawn(" sleep 10 " )
Process.wait i
https://takuya-1st.hatenablog.jp/entry/2016/04/07/040451
Ruby で、子プロセス起動をして、終了待ちをする。
終了待ちするには Process.wait( pid ) か、Process.waitall を使う
i = spawn(" sleep 10 " )
Process.wait i
386デフォルトの名無しさん
2020/05/26(火) 16:37:31.19ID:s8Kl2PhF387デフォルトの名無しさん
2020/05/26(火) 18:30:47.45ID:DUXfe990 ps | awk '{print $1}' | grep -w $PID
grepで-wオプションが使えることが判ったのでこれで取れました
grepで-wオプションが使えることが判ったのでこれで取れました
388デフォルトの名無しさん
2020/05/26(火) 18:52:54.27ID:5zsa2F3Z389デフォルトの名無しさん
2020/05/26(火) 18:53:49.06ID:5zsa2F3Z それに自分で起動したプロセスを待つだけ(何もしなくていい)なら
wait "$PID" でもいいよね?
wait "$PID" でもいいよね?
390デフォルトの名無しさん
2020/05/26(火) 20:23:33.32ID:DUXfe990391デフォルトの名無しさん
2020/05/28(木) 12:28:14.58ID:n9bIhKS2 上の方でOil Shellについて語っていた人がいたから誰か使ってるかもしれないと思って聞くけど
export -fを使おうとすると 'export' doesn't accept -f because it's dangerous.
ってエラーになるんだけどdangerousなのってどういう場合?
また一般的にexport -fは危険だから使うな派って存在するの?
export -fを使おうとすると 'export' doesn't accept -f because it's dangerous.
ってエラーになるんだけどdangerousなのってどういう場合?
また一般的にexport -fは危険だから使うな派って存在するの?
392デフォルトの名無しさん
2020/05/28(木) 18:03:48.14ID:RKI8PBxM393デフォルトの名無しさん
2020/05/29(金) 00:50:25.00ID:ECv3RSEQ >>392
それはどういう理由でしょうか?
それはどういう理由でしょうか?
394デフォルトの名無しさん
2020/05/29(金) 11:48:42.39ID:cDEYRYlQ シェル変数、環境変数、関数は重要なものが多い
システムの動作、セキュリティなどに重要な影響を与えるものが多い
不用意に操作すると深刻な問題が起きる可能性が高い
こんなところでしょうか
システムの動作、セキュリティなどに重要な影響を与えるものが多い
不用意に操作すると深刻な問題が起きる可能性が高い
こんなところでしょうか
395デフォルトの名無しさん
2020/05/29(金) 13:13:25.07ID:5WC69G2H つまりシェル変数、環境変数、関数を使うなってこと?
396デフォルトの名無しさん
2020/05/29(金) 17:26:04.52ID:dZOo8Hm0 よく知らない人は使わないに越したことはない
というところかなあ
よく知らない人が使うと
重要なものを上書きしてしまうことがあるし
というところかなあ
よく知らない人が使うと
重要なものを上書きしてしまうことがあるし
397デフォルトの名無しさん
2020/05/29(金) 17:36:28.66ID:PKgR6prj 重要なものを上書きしてしまうというのは
どういう例でしょうか?
どういう例でしょうか?
398デフォルトの名無しさん
2020/05/29(金) 19:48:52.09ID:jz7GhSHA そりゃまあ,素人は出刃包丁なんて使わんほうがいいわな。
職人が使ったらすごく良い道具であろうとも。
職人が使ったらすごく良い道具であろうとも。
399デフォルトの名無しさん
2020/05/29(金) 20:22:22.27ID:Jvc7lzH+ 出刃包丁の話はしてません
400デフォルトの名無しさん
2020/05/29(金) 21:34:05.33ID:dZOo8Hm0 >>397
signal とか?
signal とか?
401デフォルトの名無しさん
2020/05/29(金) 21:48:30.89ID:Jvc7lzH+ >>400
今の話に何の関係があるの?
今の話に何の関係があるの?
402デフォルトの名無しさん
2020/05/31(日) 15:21:54.45ID:sIM3dDR8 >>399
えぇ……と,比喩っていう概念がこの世界にはあってね,
つまり物事を説明するときに例えを用いるんだわ。
まぁ例えば会社で品質管理の監査を受けてるときに
比喩を使って説明するのはよくないかも知れんが,
こんな場末の掲示板で一々真面目に受け答えする方がオカシイって話ですよ。
えぇ……と,比喩っていう概念がこの世界にはあってね,
つまり物事を説明するときに例えを用いるんだわ。
まぁ例えば会社で品質管理の監査を受けてるときに
比喩を使って説明するのはよくないかも知れんが,
こんな場末の掲示板で一々真面目に受け答えする方がオカシイって話ですよ。
403デフォルトの名無しさん
2020/05/31(日) 15:27:43.93ID:JRHRMyge404デフォルトの名無しさん
2020/05/31(日) 17:59:31.00ID:sIM3dDR8 あぁ,あの書き方で「批判してる」って捉えちゃうのか。
あいにく,読み取り能力のない人間にまでモノを教える程暇じゃないんでね。
あいにく,読み取り能力のない人間にまでモノを教える程暇じゃないんでね。
405デフォルトの名無しさん
2020/05/31(日) 20:56:34.13ID:9ZicJfwX 質問されたからその都度答えていても
おかしな受け取られ方すると、やる気なくすよねぇ
おかしな受け取られ方すると、やる気なくすよねぇ
406デフォルトの名無しさん
2020/06/03(水) 11:21:10.07ID:i+Bz2w1U シェルの勉強中です。
引数にフルパスでファイル名を入れています。
シェル の動きとして引数がフルパスでなかった場合、エラーにしたいのですが、フルパスの判定はどうしたらいいでしょうか。
自分なりに考えたのは、
A=locate $1
if [ A = $1 ]
みたいな感じでlocateの実行結果と引数を比較して、完全一致しなかったら、フルパスじゃないのでエラーとしていました。
ただこの場合、例えばsyslogを指定した場合、locateにsyslogのバックアップ(syslog_0603みたいな)も引っかかってしまって上手く動作しませんでした
引数にフルパスでファイル名を入れています。
シェル の動きとして引数がフルパスでなかった場合、エラーにしたいのですが、フルパスの判定はどうしたらいいでしょうか。
自分なりに考えたのは、
A=locate $1
if [ A = $1 ]
みたいな感じでlocateの実行結果と引数を比較して、完全一致しなかったら、フルパスじゃないのでエラーとしていました。
ただこの場合、例えばsyslogを指定した場合、locateにsyslogのバックアップ(syslog_0603みたいな)も引っかかってしまって上手く動作しませんでした
407デフォルトの名無しさん
2020/06/03(水) 11:39:11.67ID:DK1HUsdg 最初の文字が / かどうか
408デフォルトの名無しさん
2020/06/03(水) 12:18:14.74ID:gWKP5Lqg case $path in /*) echo フルパウス; esac
409デフォルトの名無しさん
2020/06/03(水) 15:17:52.52ID:i+Bz2w1U >>407
その手がありましたか。ありがとうございます
その手がありましたか。ありがとうございます
410デフォルトの名無しさん
2020/06/05(金) 09:46:48.62ID:kQNq3lIP wgetなどを使ったシェルスクリプトを作ってファイルをダウンロードしています
該当のサイトは認証が必要でログイン処理もwgetでやっているのですが
パスワードをスクリプトなりコマンドラインとして書くのを躊躇します
(cookieを使っているので1回ログインすると数ヶ月ログインする必要はありません)
なので今はログイン処理だけは別にしてreadで入力させるようにしているのですが
パスワードを暗号化して見えなくすることは出来ないでしょうか?
暗号化してるパスワードって使いまわされるんじゃ?って心配はありますが
とりあえず今回はその問題はスルーしたいと思います
該当のサイトは認証が必要でログイン処理もwgetでやっているのですが
パスワードをスクリプトなりコマンドラインとして書くのを躊躇します
(cookieを使っているので1回ログインすると数ヶ月ログインする必要はありません)
なので今はログイン処理だけは別にしてreadで入力させるようにしているのですが
パスワードを暗号化して見えなくすることは出来ないでしょうか?
暗号化してるパスワードって使いまわされるんじゃ?って心配はありますが
とりあえず今回はその問題はスルーしたいと思います
411デフォルトの名無しさん
2020/06/05(金) 15:09:48.09ID:wkE1tuCg wgetで指定したURIがセキュアなら、
パスワードもそれに乗せて送られるから、
一応経路上では暗号化されているのでは?
パスワードもそれに乗せて送られるから、
一応経路上では暗号化されているのでは?
412デフォルトの名無しさん
2020/06/05(金) 15:44:51.41ID:vEUs2R05413デフォルトの名無しさん
2020/06/05(金) 15:45:22.79ID:vEUs2R05 linuxは知らん
414デフォルトの名無しさん
2020/06/05(金) 17:08:15.88ID:MNdAWp8s Linuxについて,古い情報だけど。
https://dayflower.hatena!!!!!blog.com/entry/20081205/1228464510
この中でも触れられている通り,/proc/以下を叩かれたらおしまい。
多分これはmacOSでもWindowsでも似たりよったりな挙動だと思う
(パスワードを受け取るプロセスとWeb資源にアクセスするプロセスが
全然違う体系で動いてる以上,そこの間で暗証番号を遣り取りする際は
平文がそれに準ずる形で渡さざる得ないから)
https://dayflower.hatena!!!!!blog.com/entry/20081205/1228464510
この中でも触れられている通り,/proc/以下を叩かれたらおしまい。
多分これはmacOSでもWindowsでも似たりよったりな挙動だと思う
(パスワードを受け取るプロセスとWeb資源にアクセスするプロセスが
全然違う体系で動いてる以上,そこの間で暗証番号を遣り取りする際は
平文がそれに準ずる形で渡さざる得ないから)
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【赤坂ライブハウス刺傷】逃走していた自衛官の男(43)を殺人未遂の疑いで逮捕 警視庁 被害女性とは知人関係 [Ailuropoda melanoleuca★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 植田日銀総裁 「円安進行が物価高を起こしている」 ★4 [お断り★]
- 【硬貨】500円だと思ったら「500ウォンが入っていた」価値は約10分の1 全国で飲食店などで“500ウォントラブル”相次いで報告 [ぐれ★]
- 「ふざけんな!」 国会議員給与、『月5万円増』報道にネット騒然 「国民が物価高で困っているのに」「定数削減とか言いながら…」★2 [♪♪♪★]
- 【神奈川新聞】「暇空茜」を県警追送検 [746833765]
- 【悲報】2025年なんG流行語大賞、凶作w w w w w w w w w w w w w w w w w w w w
- 小泉進次郎防衛相「日本の国防の崇高な使命は愛国心が基盤となっている」ネトウヨ歓喜 [165981677]
- 冬眠中のクマの巣穴の出口を何らかの手段で密閉したら
- NHKニュースウオッチ9「日本側は対話にオープンな姿勢で安定した日中関係を築きたい考えなのに中国が意固地で糸口が見いだせない」 [904151406]
- 無 vs 永遠の神様
