シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
前スレ: シェルスクリプト総合 その34
https://mevius.5ch.net/test/read.cgi/tech/1597990675/
探検
シェルスクリプト総合 その35
■ このスレッドは過去ログ倉庫に格納されています
2020/11/24(火) 21:37:20.06ID:mbTiTj6s
2020/11/25(水) 11:27:15.22ID:zD7zhP2P
クソッシュについておしえて
2020/11/25(水) 17:20:14.98ID:7xSU5LuF
>>8
シェルはインタラクティブだけじゃなくてシェルスクリプトとしても使われてる
例えば/bin以下でこんなのがシェルスクリプトで実装されてる
/bin/bzdiff: POSIX shell script, ASCII text executable
/bin/bzexe: POSIX shell script, ASCII text executable
/bin/bzgrep: POSIX shell script, ASCII text executable
/bin/bzmore: POSIX shell script, ASCII text executable
/bin/egrep: POSIX shell script, ASCII text executable
/bin/fgrep: POSIX shell script, ASCII text executable
/bin/gunzip: POSIX shell script, ASCII text executable
/bin/gzexe: POSIX shell script, ASCII text executable
/bin/which: POSIX shell script, ASCII text executable
/bin/zcat: POSIX shell script, ASCII text executable
/bin/zdiff: POSIX shell script, ASCII text executable
/bin/zgrep: POSIX shell script, ASCII text executable
/bin/zless: POSIX shell script, ASCII text executable
/bin/zmore: POSIX shell script, ASCII text executable
なのでPOSIXシェルがシステムから取り除かれることはない
そしてfishはシステムにとって使えず必須ではないのでインストールされない
という状況がこれからも続く
悪くはないが代替として使えない
シェルはインタラクティブだけじゃなくてシェルスクリプトとしても使われてる
例えば/bin以下でこんなのがシェルスクリプトで実装されてる
/bin/bzdiff: POSIX shell script, ASCII text executable
/bin/bzexe: POSIX shell script, ASCII text executable
/bin/bzgrep: POSIX shell script, ASCII text executable
/bin/bzmore: POSIX shell script, ASCII text executable
/bin/egrep: POSIX shell script, ASCII text executable
/bin/fgrep: POSIX shell script, ASCII text executable
/bin/gunzip: POSIX shell script, ASCII text executable
/bin/gzexe: POSIX shell script, ASCII text executable
/bin/which: POSIX shell script, ASCII text executable
/bin/zcat: POSIX shell script, ASCII text executable
/bin/zdiff: POSIX shell script, ASCII text executable
/bin/zgrep: POSIX shell script, ASCII text executable
/bin/zless: POSIX shell script, ASCII text executable
/bin/zmore: POSIX shell script, ASCII text executable
なのでPOSIXシェルがシステムから取り除かれることはない
そしてfishはシステムにとって使えず必須ではないのでインストールされない
という状況がこれからも続く
悪くはないが代替として使えない
2020/11/25(水) 19:19:27.01ID:4qZN2cIE
>>11
そんな話は聞いてない。
そんな話は聞いてない。
2020/11/25(水) 20:38:12.08ID:uhQhH5gv
だから、別にfishでスクリプトを書いてもいいけど
統一された企画も何もないんだから、
少なくともこのスレで話す話題じゃねーよなって言う話
それこそ、Pythonも、
逐次的に入力を解釈して利用者に入力を促進する状態がある
と言う点ではシェルの一緒だけど、
じゃあここで話すの話題かっていう。
統一された企画も何もないんだから、
少なくともこのスレで話す話題じゃねーよなって言う話
それこそ、Pythonも、
逐次的に入力を解釈して利用者に入力を促進する状態がある
と言う点ではシェルの一緒だけど、
じゃあここで話すの話題かっていう。
2020/11/25(水) 20:39:13.80ID:uhQhH5gv
すまん音声入力が誤爆した
企画→規格
企画→規格
2020/11/25(水) 21:29:52.71ID:0vRedS2N
こんなキモイことホソボソ独りでつぶやいてんのかw
2020/11/25(水) 21:41:57.79ID:uhQhH5gv
最新のfishは使うけど音声入力は使いません!
wwww
wwww
2020/11/25(水) 22:04:20.77ID:Hppr2Ato
2020/11/25(水) 22:50:57.68ID:m5om5rgh
シカトすればすぐに終わるだろうに、なぜか自ら話を伸ばすw
2020/11/25(水) 23:07:49.06ID:zD7zhP2P
いつから統一された規格とやらが要件になったの?
いいけどそれなら総合の看板下ろしてPOSIX専用掲げてよ紛らわしい
いいけどそれなら総合の看板下ろしてPOSIX専用掲げてよ紛らわしい
2020/11/26(木) 00:09:07.40ID:JCzWlVbS
shに似ても似つかないスクリプトはスレ違いなのはたしか。
POSIXはある程度どうでもよいとして。
ただスレ違いを前提として、別のシェルをすこしくらい話題にするのはいいのでは。
そんなに活発なスレでもないし。
POSIXはある程度どうでもよいとして。
ただスレ違いを前提として、別のシェルをすこしくらい話題にするのはいいのでは。
そんなに活発なスレでもないし。
2020/11/26(木) 00:38:08.15ID:WQpiaax/
いつも思うがポジキチは病気
2020/11/26(木) 01:12:59.63ID:T00uXQW1
昔話だが、まだいろんなUNIXワークステーションが使われていた頃、あるOS用に
書いたスクリプトが別のOSで微妙に動かなかったりして、面倒だった。
そうするとやっぱPOSIXかあと思ったりした。
今なんかどこでもたいていbashが入ってるしな。てゆうかたいがいLinuxだし。
そしてCPUがたいがいインテルに... まARMのクロスコンパイルはするけど。
書いたスクリプトが別のOSで微妙に動かなかったりして、面倒だった。
そうするとやっぱPOSIXかあと思ったりした。
今なんかどこでもたいていbashが入ってるしな。てゆうかたいがいLinuxだし。
そしてCPUがたいがいインテルに... まARMのクロスコンパイルはするけど。
2020/11/26(木) 01:14:37.64ID:T00uXQW1
あれ、ディレクトリ構造というのもPOSIXで規定されてるんだっけ?
違うOSで動かすときはそういうのも問題になったな。
そうやってGNUのconfigureなんかも複雑化していったという。
違うOSで動かすときはそういうのも問題になったな。
そうやってGNUのconfigureなんかも複雑化していったという。
2020/11/26(木) 02:04:23.72ID:JCzWlVbS
2020/11/26(木) 08:58:40.11ID:Czgib+VC
手元に有用なfishスクリプトがあってそれを使いたいならfishをインストールすればいいだけじゃね?
なぜデフォルトインストールされたシェルだけの縛りゲーしてるの
なぜデフォルトインストールされたシェルだけの縛りゲーしてるの
2020/11/26(木) 11:11:31.59ID:ZeK0fFqz
fishをインストールする権限がないから
2020/11/26(木) 12:05:54.70ID:JCzWlVbS
パーミッションだけの話なら、$HOMEのどこかにいれとけ。
/usr/bin以下でないとダメなわけでもないやろ。
/usr/bin以下でないとダメなわけでもないやろ。
2020/11/26(木) 13:13:04.55ID:BChkjCh/
>>27
だからインストールできない
linux-vdso.so.1 (0x00007fffeddc6000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f211d340000)
libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f211d110000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f211cef0000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f211cce0000)
libpcre2-32.so.0 => /usr/lib/x86_64-linux-gnu/libpcre2-32.so.0 (0x00007f211ca60000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f211c6d0000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f211c2c0000)
/lib64/ld-linux-x86-64.so.2 (0x00007f211da00000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f211bf20000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f211bd00000)
だからインストールできない
linux-vdso.so.1 (0x00007fffeddc6000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f211d340000)
libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f211d110000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f211cef0000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f211cce0000)
libpcre2-32.so.0 => /usr/lib/x86_64-linux-gnu/libpcre2-32.so.0 (0x00007f211ca60000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f211c6d0000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f211c2c0000)
/lib64/ld-linux-x86-64.so.2 (0x00007f211da00000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f211bf20000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f211bd00000)
2020/11/26(木) 14:24:24.05ID:dGdApgXM
2020/11/26(木) 14:30:52.27ID:SyhWTBHJ
感想は同意。マウント取るためのネタとしてするなとも言っているのもありそうだな
2020/11/26(木) 15:57:47.46ID:JCzWlVbS
テンプレに、明示してたらほかのシェルでも可、とあるんだからここでええやろ。
POSIXバカは無視で。
POSIXバカは無視で。
2020/11/27(金) 15:29:21.75ID:3pf/tsln
awkやsedの話でもなんかすぐ「そんな複雑なことやるな!」って否定しだすしな。
awk,sedは独立したプログラム言語とはいえシェルスクリプトの一部と言えるんだから,
fishと同じでここで扱っても良い話題。
awk,sedは独立したプログラム言語とはいえシェルスクリプトの一部と言えるんだから,
fishと同じでここで扱っても良い話題。
2020/11/27(金) 15:55:39.83ID:w5Az7J0d
そんな事するなとは言ってないな
シェルスクリプトではないというだけの話だ
独立したプログラム言語でシェルスクリプトではない
シェルスクリプトではないというだけの話だ
独立したプログラム言語でシェルスクリプトではない
2020/11/27(金) 16:00:25.98ID:pgQorB3q
息を吐くように嘘をつく
2020/11/27(金) 18:09:13.28ID:yWTZwmZ1
>>28
ライブラリもホームに置けば。一工夫いると思うけど。
ライブラリもホームに置けば。一工夫いると思うけど。
2020/11/27(金) 18:51:24.04ID:OZT1ua32
2020/11/27(金) 19:51:16.84ID:3pf/tsln
POSIX信者ウゼー
FishでもAWKでもシェルスクリプト一と言えるだろうが。
そりゃ突き詰めて見れば,「PowerShellを扱わないんであればFishシェルも扱わない」
「Pythonを扱わないんであればAWKも扱わない」という理屈は分からなくもないけど,
どうしてそう強情に0か1かでしか物事を捉えられんのかね……。
FishでもAWKでもシェルスクリプト一と言えるだろうが。
そりゃ突き詰めて見れば,「PowerShellを扱わないんであればFishシェルも扱わない」
「Pythonを扱わないんであればAWKも扱わない」という理屈は分からなくもないけど,
どうしてそう強情に0か1かでしか物事を捉えられんのかね……。
2020/11/27(金) 21:43:43.30ID:w5Az7J0d
awkがシェルスクリプトじゃないというのはPOSIXとは関係ない
awkを呼び出すコードは当然シェルスクリプトだが
awkはシェルではないので、awkの文法に関することは
シェルスクリプトではないというだけのことだ。
そしてfishはシェルなのだから、当然シェルスクリプトだ
ただしPOSIXではないシェルスクリプトであるが
awkを呼び出すコードは当然シェルスクリプトだが
awkはシェルではないので、awkの文法に関することは
シェルスクリプトではないというだけのことだ。
そしてfishはシェルなのだから、当然シェルスクリプトだ
ただしPOSIXではないシェルスクリプトであるが
2020/11/27(金) 21:51:03.71ID:w5Az7J0d
例えばシェルスクリプトで$_ってどういう意味ですか?
って聞かれても困るだろ?このコードで
cat test.txt | ruby -e 'while gets; print $_; end'
って聞かれても困るだろ?このコードで
cat test.txt | ruby -e 'while gets; print $_; end'
2020/11/27(金) 22:24:30.25ID:tPIe9OcJ
>>39
それはRubyの記号だよ、で済む話
それはRubyの記号だよ、で済む話
2020/11/27(金) 22:33:58.69ID:OZT1ua32
2020/11/27(金) 22:39:54.65ID:w5Az7J0d
そういうことだな。それはawkの文法だよ。
だからawkスレで聞いてねで終わる
だからawkスレで聞いてねで終わる
2020/11/27(金) 22:40:48.72ID:3pf/tsln
>>38
じゃあPowerShellやcmdの話題も扱っていい筈よね。
ここUnix板じゃねーし,
仮にUnixシェル専用だという暗黙の了解があるにしても
PowerShellはLinuxの上で動くし。
……とまあ,際限なくチャチャを入れることができる
ガバガバ理論なんで,別にAWK程度なら
このスレで扱っても構わないでしょう。
柔軟に生きよう。
じゃあPowerShellやcmdの話題も扱っていい筈よね。
ここUnix板じゃねーし,
仮にUnixシェル専用だという暗黙の了解があるにしても
PowerShellはLinuxの上で動くし。
……とまあ,際限なくチャチャを入れることができる
ガバガバ理論なんで,別にAWK程度なら
このスレで扱っても構わないでしょう。
柔軟に生きよう。
2020/11/27(金) 22:51:49.53ID:w5Az7J0d
>>43
専用スレがあるのだからそっちに行ったほうがいい
専用スレがあるのだからそっちに行ったほうがいい
2020/11/27(金) 22:58:10.21ID:YUFOKuwU
ご覧の通り何を言っても無駄
無駄に突っかかってくるやつ相手にしてもSAN値下がるだけなので
「POSIXにこだわらないシェルスクリプト総合スレ」を立てたほうが建設的だよ
POSIXに強くこだわりたいときにこのスレ使えばいい
無駄に突っかかってくるやつ相手にしてもSAN値下がるだけなので
「POSIXにこだわらないシェルスクリプト総合スレ」を立てたほうが建設的だよ
POSIXに強くこだわりたいときにこのスレ使えばいい
2020/11/27(金) 23:00:51.97ID:W+zDVYCR
>>43
ぺこぱかよ
ぺこぱかよ
2020/11/27(金) 23:06:24.74ID:0Fqhj3Tv
2020/11/27(金) 23:08:59.63ID:W+zDVYCR
このスレの「総合」の看板を下ろさないと。
2020/11/27(金) 23:10:11.01ID:0Fqhj3Tv
POSIXシェルスクリプト総合にすればOK
2020/11/27(金) 23:21:59.20ID:W+zDVYCR
POSIXシェルスクリプト専用だろ?
何が総合だ。看板に偽りあり!
何が総合だ。看板に偽りあり!
2020/11/27(金) 23:27:25.30ID:OZT1ua32
2020/11/27(金) 23:30:37.47ID:OZT1ua32
2020/11/28(土) 01:07:03.95ID:UNKiK/L1
2020/11/28(土) 01:17:29.82ID:u/XOSRZ8
2020/11/28(土) 01:17:44.10ID:u/XOSRZ8
>>53
さすがに被害妄想
さすがに被害妄想
2020/11/28(土) 01:36:29.48ID:Qftrz3Vi
2020/11/28(土) 02:08:28.38ID:iJr35ATc
awkの話もシェルスクリプトといことでいいですよね?
awkで作られた3Dシューティングゲーム「awkaster」が凄い
https://www.softantenna.com/wp/software/awkaster/
このコードを説明してください
awkで作られた3Dシューティングゲーム「awkaster」が凄い
https://www.softantenna.com/wp/software/awkaster/
このコードを説明してください
2020/11/28(土) 02:12:15.88ID:iJr35ATc
別にawk程度ならこのスレで扱っても構わないでしょう?w
2020/11/28(土) 02:51:11.97ID:9ywhOEJN
2020/11/28(土) 02:56:35.29ID:iJr35ATc
はらうわけないやろw
2020/11/28(土) 04:11:09.88ID:qjJxpluv
>>60
キチガイすぎだ、お前は
キチガイすぎだ、お前は
62デフォルトの名無しさん
2020/11/28(土) 10:42:20.87ID:PixgrLNy2020/11/28(土) 12:09:11.41ID:FGpMIdZG
2020/11/28(土) 12:24:11.90ID:u/XOSRZ8
>>62
自演乙
自演乙
2020/11/28(土) 12:27:00.82ID:u/XOSRZ8
だいたい,「分かりやすいタイトル」にしたところで人が集まるような話題じゃねーしなw
Fishだけ知っててBash知らない,みたいな人間なんて超希少だろうし,
大半の人間はFishの前にBashを知っていて,
シェルスクリプトとして書く場合はBashを使う。
だから「Fishでこんな処理を書きたいんだけど」という疑問の前に
Bashを使うんだわ,残念ながら。
まあBashを使うことが良いこと≠ゥ,というのはまた別の話な。
勘違いしてつっかかってくる奴がいそうなんで,念の為言っておくが。
Fishだけ知っててBash知らない,みたいな人間なんて超希少だろうし,
大半の人間はFishの前にBashを知っていて,
シェルスクリプトとして書く場合はBashを使う。
だから「Fishでこんな処理を書きたいんだけど」という疑問の前に
Bashを使うんだわ,残念ながら。
まあBashを使うことが良いこと≠ゥ,というのはまた別の話な。
勘違いしてつっかかってくる奴がいそうなんで,念の為言っておくが。
2020/11/28(土) 15:43:45.81ID:RWbEaHwZ
PowerShellやコマンドプロンプトはシェルスクリプトがなかった
Windowsの世界で使わざるを得ないものだから、それでスクリプト書くことはあるけど
fishとか書かないよね
書けるやつはbashかPOSIX準拠で書くし
書けないやつはPythonとかの言語を使う
bash書くのだるいからfishでとかやるやつがいない
fishとかプロンプトからの入力に使うだけでしょ
使ってる人もデフォルトの補完便利だねぐらいにしか思ってない
Windowsの世界で使わざるを得ないものだから、それでスクリプト書くことはあるけど
fishとか書かないよね
書けるやつはbashかPOSIX準拠で書くし
書けないやつはPythonとかの言語を使う
bash書くのだるいからfishでとかやるやつがいない
fishとかプロンプトからの入力に使うだけでしょ
使ってる人もデフォルトの補完便利だねぐらいにしか思ってない
2020/11/28(土) 15:52:04.59ID:/h72lCnp
fishのスクリプトの具体的なことは未だに全く書かれていない、どう書いたらいいとかさえも
最初に言い出したやつさえ使ってないだろうw いつまで引っ張ってるんだか
最初に言い出したやつさえ使ってないだろうw いつまで引っ張ってるんだか
2020/11/28(土) 17:30:07.45ID:P/o6eg3s
マイナーな話題は許さんのだったら総合の看板下ろせ
2020/11/28(土) 17:49:02.21ID:FGpMIdZG
AWS のCodeDeploy には、sudo yum install ruby
と書いてあるから、Ruby製
CloudFormation では、Ruby製のChef, Cookpad製のItamae, Kumogata2 を使える
バックエンドの環境構築運用では、
複雑なものは、シェルスクリプトよりも、Rubyで書く
と書いてあるから、Ruby製
CloudFormation では、Ruby製のChef, Cookpad製のItamae, Kumogata2 を使える
バックエンドの環境構築運用では、
複雑なものは、シェルスクリプトよりも、Rubyで書く
2020/11/28(土) 18:12:07.68ID:u/XOSRZ8
>>68
もうこれに尽きるな。
Fishシェルのことを扱う別のスレを建てるんじゃなくて,
POSIXシェルのシェルとしての機能(for文, set命令とか)のみを
扱う専門スレを建てればいい。
「総合」とある以上,ここでは前者を含んだ話題を扱うべきだ。
もうこれに尽きるな。
Fishシェルのことを扱う別のスレを建てるんじゃなくて,
POSIXシェルのシェルとしての機能(for文, set命令とか)のみを
扱う専門スレを建てればいい。
「総合」とある以上,ここでは前者を含んだ話題を扱うべきだ。
71デフォルトの名無しさん
2020/12/01(火) 08:36:50.52ID:2728+f2c dateコマンドで「今日の10時」などではなく「次に来る10時」を求める方法をご存知の方教えてください!
2020/12/01(火) 10:32:35.01ID:XcHTxxjN
date?おいやめろ。またPOSIXの話になるじゃねーか!
2020/12/01(火) 12:42:30.34ID:WP+WGTcn
文字列での表示は出来るけど、
プログラミング的な時間オブジェクトの比較とかは、出来ないかも
Ruby などのプログラミング言語なら、時間オブジェクトで比較できる
date --iso-8601=hours --date='15:00 today'
2020-12-01T15+09:00
date --iso-8601=hours --date='15:00 next day'
2020-12-02T15+09:00
プログラミング的な時間オブジェクトの比較とかは、出来ないかも
Ruby などのプログラミング言語なら、時間オブジェクトで比較できる
date --iso-8601=hours --date='15:00 today'
2020-12-01T15+09:00
date --iso-8601=hours --date='15:00 next day'
2020-12-02T15+09:00
7473
2020/12/01(火) 12:48:04.25ID:WP+WGTcn 現在・今日・明日の文字列で、文字列として比較できるかも知れない
date --iso-8601=seconds
2020-12-01T12:44:54+09:00
date --iso-8601=seconds --date='15:00 today'
2020-12-01T15:00:00+09:00
date --iso-8601=seconds --date='15:00 next day'
2020-12-02T15:00:00+09:00
date --iso-8601=seconds
2020-12-01T12:44:54+09:00
date --iso-8601=seconds --date='15:00 today'
2020-12-01T15:00:00+09:00
date --iso-8601=seconds --date='15:00 next day'
2020-12-02T15:00:00+09:00
7673
2020/12/01(火) 14:53:07.28ID:WP+WGTcn bash 限定で。
zsh では、[ $today \< $now ] が動かないとか、どこかのサイトに書いてあったので
#!/bin/bash
# 現在・今日・明日の文字列
now=`date --iso-8601=seconds`
today=`date --iso-8601=seconds --date='14:00 today'`
tomorrow=`date --iso-8601=seconds --date='14:00 tomorrow'`
# echo $now # 2020-12-01T14:41:29+09:00
# echo $today # 2020-12-01T14:00:00+09:00
# echo $tomorrow # 2020-12-02T14:00:00+09:00
# 今日が現在よりも前なら、明日。
# それ以外は、今日
if [ $today \< $now ]; then
echo '明日'
echo $tomorrow # 2020-12-02T14:00:00+09:00
else
echo '今日'
echo $today
fi
zsh では、[ $today \< $now ] が動かないとか、どこかのサイトに書いてあったので
#!/bin/bash
# 現在・今日・明日の文字列
now=`date --iso-8601=seconds`
today=`date --iso-8601=seconds --date='14:00 today'`
tomorrow=`date --iso-8601=seconds --date='14:00 tomorrow'`
# echo $now # 2020-12-01T14:41:29+09:00
# echo $today # 2020-12-01T14:00:00+09:00
# echo $tomorrow # 2020-12-02T14:00:00+09:00
# 今日が現在よりも前なら、明日。
# それ以外は、今日
if [ $today \< $now ]; then
echo '明日'
echo $tomorrow # 2020-12-02T14:00:00+09:00
else
echo '今日'
echo $today
fi
2020/12/01(火) 17:23:30.11ID:sVIjNcb4
>>71
YYYY MM DD HH フォーマットを返すようにしてdateを呼び出す
if [ HH < 10 ]; then
echo YYYY MM DD 10 00 00
else
echo YYYY MM DD+1 10 00 00
fi
あとよろ
DDが月末だったら問題あるから気をつけな
YYYY MM DD HH フォーマットを返すようにしてdateを呼び出す
if [ HH < 10 ]; then
echo YYYY MM DD 10 00 00
else
echo YYYY MM DD+1 10 00 00
fi
あとよろ
DDが月末だったら問題あるから気をつけな
2020/12/01(火) 17:39:46.39ID:gqqffooe
>>77
10時を過ぎても11時までなら今日の10時が返されるんじゃ?
10時を過ぎても11時までなら今日の10時が返されるんじゃ?
2020/12/01(火) 17:50:56.66ID:sVIjNcb4
うん、あとよろw
2020/12/01(火) 17:52:38.86ID:sVIjNcb4
思ったんだがシェルスクリプトって日付の計算ができないんだな
そういうライブラリってないのか?
そういうライブラリってないのか?
2020/12/01(火) 18:03:57.84ID:/3zv7uXC
数字の計算はシェルスクリプト向けではないなあ
2020/12/01(火) 18:09:45.30ID:XaSziyAo
シェルスクリプトで数字の計算は普通にできるやろ?
rubyとかpythonとか便利ライブラリ盛りだくさんな温室で
育ってきたやつは知らんだろうけど
C言語だって日付の計算はできないんだぞ
ライブラリを作るか使うかしてやっと実現できること
ライブラリを誰かが用意してくれなきゃプログラミングができないとか
技術力もほんと落ちたもんだわw
rubyとかpythonとか便利ライブラリ盛りだくさんな温室で
育ってきたやつは知らんだろうけど
C言語だって日付の計算はできないんだぞ
ライブラリを作るか使うかしてやっと実現できること
ライブラリを誰かが用意してくれなきゃプログラミングができないとか
技術力もほんと落ちたもんだわw
2020/12/01(火) 18:28:45.10ID:xl/Y0HIa
>>71
tz=JST-9; [ $(date +%H) -ge 10 ] && tz=JST-23;echo $(TZ=$tz date +%D) 10:00
tz=JST-9; [ $(date +%H) -ge 10 ] && tz=JST-23;echo $(TZ=$tz date +%D) 10:00
2020/12/01(火) 18:31:08.89ID:xl/Y0HIa
2020/12/01(火) 20:27:54.30ID:vbtVJLvD
>>84
これでいいわな。核心部分は%Hと10の比較だけ。
これでいいわな。核心部分は%Hと10の比較だけ。
2020/12/01(火) 22:04:55.51ID:JidlBL+f
>>82
> シェルスクリプトで数字の計算は普通にできるやろ?
外部コマンド呼ばないとできないよね。あ$(())とかのこと? でも伝統的には...
> ライブラリを誰かが用意してくれなきゃプログラミングができないとか
日付の処理とかいろいろ落とし穴が多いから。
今はプログラムも複雑になったし... 料理に例えると、大昔は火を起こすところから
できないと駄目だったろうが今はそんなこと要求されないw
> シェルスクリプトで数字の計算は普通にできるやろ?
外部コマンド呼ばないとできないよね。あ$(())とかのこと? でも伝統的には...
> ライブラリを誰かが用意してくれなきゃプログラミングができないとか
日付の処理とかいろいろ落とし穴が多いから。
今はプログラムも複雑になったし... 料理に例えると、大昔は火を起こすところから
できないと駄目だったろうが今はそんなこと要求されないw
2020/12/01(火) 22:56:51.43ID:C5mmwJjK
GNUやBSDのdateの拡張部分、つうてもある値(文字列な日付も含む)を日付に変換っていう部分を使えば普通に日付の計算は(簡単に)できるだろう
日付の計算はシリアルな値=ある起点(OSやフレームワークによる)からの秒数 をベースでやるのが普通。落とし穴を避けるためにも(他の言語でも)
年月日で計算する必要のあるのは、落とし穴なんて関係ない単純な場合なだけだろう。何年何ヶ月 とか ある程度適当でいい場合とか
日付の計算はシリアルな値=ある起点(OSやフレームワークによる)からの秒数 をベースでやるのが普通。落とし穴を避けるためにも(他の言語でも)
年月日で計算する必要のあるのは、落とし穴なんて関係ない単純な場合なだけだろう。何年何ヶ月 とか ある程度適当でいい場合とか
2020/12/01(火) 23:04:11.24ID:uBfLZ+08
しかし、そういうときはさすがにPerlだな。w
2020/12/01(火) 23:34:27.84ID:sWsOqT7L
>>86
> 外部コマンド呼ばないとできないよね。あ$(())とかのこと? でも伝統的には...
伝統?いつまでも古代のBourne shellなんか使ってるなよ
今は令和の時代だぞ?1988年(ksh88)はもう30年以上前だ。
そんな昔のシェルをお前は今も使ってるのか?
いい加減POSIX準拠シェルに乗り換えろ
> 外部コマンド呼ばないとできないよね。あ$(())とかのこと? でも伝統的には...
伝統?いつまでも古代のBourne shellなんか使ってるなよ
今は令和の時代だぞ?1988年(ksh88)はもう30年以上前だ。
そんな昔のシェルをお前は今も使ってるのか?
いい加減POSIX準拠シェルに乗り換えろ
90デフォルトの名無しさん
2020/12/01(火) 23:35:29.20ID:8hFs+PyJ >>71です
みなさんありがとうございます助かりました!
みなさんありがとうございます助かりました!
2020/12/01(火) 23:40:19.72ID:sWsOqT7L
2020/12/01(火) 23:54:59.72ID:vbtVJLvD
別にPOSIXに従ってなくても,元の質問が解決すればそれでいいと思うんだが。
ちなみにPOSIXに準拠した場合でもUNIX時刻は算出できる。
ちなみにPOSIXに準拠した場合でもUNIX時刻は算出できる。
2020/12/01(火) 23:55:29.58ID:vbtVJLvD
しかもThe Open Groupが直々にコードを書いてくれてるっていうw
2020/12/02(水) 00:02:02.37ID:FOy3G1VC
また頓珍漢にPOSIX準拠と言い出してるのかw
2020/12/02(水) 00:18:08.63ID:2qveoeUZ
POSIXバカはスルーで!
興味がある人のみ反応すれば。
興味がある人のみ反応すれば。
2020/12/02(水) 01:03:04.87ID:eXK3SZJl
2020/12/02(水) 01:11:52.81ID:s/Tj40p5
名前に反して自らの排外的な殻に閉じ籠ってる団体
2020/12/02(水) 01:31:58.00ID:fE08etha
POSIXバカと呼び名通りにすぐにバカっぷりを体現してくれる呼び名に偽りはないなw
2020/12/02(水) 04:20:55.77ID:eXK3SZJl
などと文句をいうだけ
10073
2020/12/02(水) 13:32:26.78ID:vDg6xkSY >>76
を改良した。
2020-12-02T14:00:00 のような文字列で比較している
#!/bin/bash
time='14:00' # 求める時間
# 現在・今日・明日の文字列。年月日-時分秒。2020-12-02T14:00:00
now=`date +%Y-%m-%dT%H:%M:%S`
today=`date +%Y-%m-%dT%H:%M:%S --date="$time today"`
tomorrow=`date +%Y-%m-%dT%H:%M:%S --date="$time tomorrow"`
# 今日が現在よりも前なら、明日。
# それ以外は、今日
if [ $today \< $now ]; then
echo '明日'
echo $tomorrow #
else
echo '今日'
echo $today
fi
を改良した。
2020-12-02T14:00:00 のような文字列で比較している
#!/bin/bash
time='14:00' # 求める時間
# 現在・今日・明日の文字列。年月日-時分秒。2020-12-02T14:00:00
now=`date +%Y-%m-%dT%H:%M:%S`
today=`date +%Y-%m-%dT%H:%M:%S --date="$time today"`
tomorrow=`date +%Y-%m-%dT%H:%M:%S --date="$time tomorrow"`
# 今日が現在よりも前なら、明日。
# それ以外は、今日
if [ $today \< $now ]; then
echo '明日'
echo $tomorrow #
else
echo '今日'
echo $today
fi
101デフォルトの名無しさん
2020/12/02(水) 18:18:18.22ID:jOtugkoA now=$(date +%Y%m%d %H%M%S)
date=${now# *
20201202 181521
4294967296
date=${now# *
20201202 181521
4294967296
102デフォルトの名無しさん
2020/12/02(水) 18:18:53.41ID:jOtugkoA すまんw 途中で書き込んでしまったw
103デフォルトの名無しさん
2020/12/02(水) 18:28:48.81ID:jOtugkoA やっぱ面倒になった >>84でいいやw
104デフォルトの名無しさん
2020/12/02(水) 20:24:18.38ID:aGDRVZCV105デフォルトの名無しさん
2020/12/02(水) 21:09:12.29ID:2qveoeUZ じゃあそれをはれよ
106デフォルトの名無しさん
2020/12/03(木) 00:15:40.19ID:qzOIs4Mf107デフォルトの名無しさん
2020/12/03(木) 00:54:27.06ID:7EFKRkup >>106
POSIXバカである行為と人物は異なる。
POSIXバカである行為と人物は異なる。
108デフォルトの名無しさん
2020/12/03(木) 01:29:53.30ID:JqlpTbiL それでUNIX時刻の定義とはどこ?
109デフォルトの名無しさん
2020/12/03(木) 01:41:47.93ID:JqlpTbiL epoch time、unix timeどちらでも調べたがやっぱりないな
110デフォルトの名無しさん
2020/12/03(木) 08:47:14.88ID:qzOIs4Mf■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国、日本行き“50万人”キャンセル 渡航自粛でコロナ禍以来最大 ★2 [お断り★]
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★6 [ぐれ★]
- 中国外務省局長 「ポケットに手を入れていたのは寒いから」 日本との局長級会談で [お断り★]
- 【速報】中国外務省報道官 高市首相発言撤回なければ「断固たる対抗措置」 ★3 [蚤の市★]
- 中国、日本行き“50万人”キャンセル 渡航自粛でコロナ禍以来最大 ★3 [お断り★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★4 [BFU★]
- 【実況】博衣こよりのえちえちフログロ学力テスト🧪★2
- 【実況】博衣こよりのえちえちフログロ学力テスト🧪
- ネトウヨ「日本人全員の命を犠牲にしてでも台湾を守るべき!」ぶっちゃけそこまでする必要あるか? [881676371]
- 【高市早苗】習近平、本気で激おこ [115996789]
- 【ぺこ専🐰】なんG 兎田ぺこら実況スレ🏡【ホロライブ▶】
- 【悲報】高市早苗さん、もう辞職しか選択肢がない… [271912485]
