(´・_・`) 今日も結婚できなかったのでusleepコマンドは廃止され近いうちに削除される というお話
今日も結婚できなかったクラスタの皆さんこんにちは。カノジョできないエンジニア Advent Calendar 2017の8日目、来る日も来る日も結婚できずカノジョもできずに毎晩オフトゥンでメソメソ泣きながら眠りにつく日々でございます。
(´・_・`) 今日も結婚できなかった
— 40代独身 (っ◠‿◠ )っ ゃー (正気) (@nullpopopo) November 26, 2015
どうやら2015年11月26日から結婚できなかったようですが、別にこの日以前に結婚できていたわけではありません。ちなみにツイでの初出は
@aknofall さすがにケーキがないと式はできない。今日も結婚できなかった。
— ハナイ (@herknight871) September 14, 2010
こちらの模様。人さまへのレスでなく、ぼそっとつぶやくツイだとこちらが初出の模様。
今日も結婚できなかった
— たられす (@tahipoko) May 7, 2011
定期的に今日も結婚できなかったとつぶやき始めた人はみそ味さんみたいですね。何故かはわかりませんが、2014年のクリスマスから今日も結婚できなかったツイが増えています。
今日も結婚できなかった
— みそのブルボン (@y_s_k_) May 14, 2014
年をまたいで2015年からは爆発的な今日も結婚できなかったブームが年間を通じて発生した模様。そして2016年には今日も結婚できなかったbotが発生(ちなみに作者は私じゃありません)。
今日も結婚できなかった。
— 今日も結婚できなかったbot (@ashitamodekinai) August 29, 2016
usleep コマンドを使おうとしたら怒られが発生した
マイクロ秒単位でスリープできることに定評のある usleep コマンドですが、fedora27の環境で実行しようとしたら warning: usleep is deprecated, and will be removed in near future! と怒られが発生。
[nullpopopo@U24E-RED ~]$ usleep 768000 warning: usleep is deprecated, and will be removed in near future! warning: use "sleep 0.768" instead... [nullpopopo@U24E-RED ~]$ echo $? 0
一応コマンドそのものは正常終了しますね。ただ親切に警告が出るのはよいのですが、この警告は標準出力と標準エラー出力のどちらに出力されるのだろう・・・
[nullpopopo@U24E-RED ~]$ date ; usleep 768000 2> /dev/null ; date 2017年 12月 1日 金曜日 01:08:41 JST 2017年 12月 1日 金曜日 01:08:42 JST
標準エラー出力に出力されましたね。ということで、都合がよろしくなければ標準エラー出力だけ /dev/null 送りにしましょう。
sleepコマンドで代用してみた
てっきりsleepコマンドって整数値しか受け付けないもんだと思ってたら、GNU sleepって浮動小数点が使えるのですね。知らなかった。
[nullpopopo@U24E-RED ~]$ date ; sleep 0.768 ; date 2017年 12月 1日 金曜日 01:10:43 JST 2017年 12月 1日 金曜日 01:10:44 JST
ちなみに Fedora 25 の環境では怒られが発生しなかった模様。なのでほんとつい最近の出来事なのですね。
[nullpopopo@U24E ~]$ cat /etc/redhat-release Fedora release 25 (Twenty Five) [nullpopopo@U24E ~]$ date ; usleep 1 ; date 2017年 12月 1日 金曜日 01:34:13 JST 2017年 12月 1日 金曜日 01:34:13 JST [nullpopopo@U24E ~]$ rpm -qf $(which usleep) initscripts-9.69-1.fc25.x86_64 [nullpopopo@U24E ~]$ dnf info $(rpm -qf $(which usleep)) インストール済みパッケージ 名前 : initscripts アーキテク : x86_64 エポック : 0 バージョン : 9.69 リリース : 1.fc25 容量 : 1.3 M リポジトリ : @System From repo : @commandline 概要 : Scripts to bring up network interfaces and legacy utilities URL : http://fedorahosted.org/releases/i/n/initscripts/ ライセンス : GPLv2 説明 : This package contains the script that activates and deactivates most : network interfaces, some utilities, and other legacy files.
おまけ : usleep実行環境
[nullpopopo@U24E-RED ~]$ cat /etc/redhat-release Fedora release 27 (Twenty Seven) [nullpopopo@U24E-RED ~]$ which usleep /usr/bin/usleep [nullpopopo@U24E-RED ~]$ rpm -qf $(which usleep) initscripts-9.78-1.fc27.x86_64 [nullpopopo@U24E-RED ~]$ dnf info initscripts-9.78-1.fc27.x86_64 インストール済みパッケージ 名前 : initscripts バージョン : 9.78 リリース : 1.fc27 アーキテクチ : x86_64 サイズ : 1.2 M ソース : initscripts-9.78-1.fc27.src.rpm リポジトリ : @System From repo : updates 概要 : Scripts to bring up network interfaces and legacy utilities URL : https://github.com/fedora-sysv/initscripts ライセンス : GPLv2 説明 : This package contains the script that activates and deactivates most : network interfaces, some utilities, and other legacy files.
まとめ
(´・_・`) 今日も結婚できなかった
[amazonjs asin=”B075RC46G5″ locale=”JP” title=”ソフトウェアデザイン 2017年 12 月号 雑誌”]