202410¶
audible ping¶
% ping -a 1.1.1.1
% echo '\a'
-A Audible. Output a bell (ASCII 0x07) character when no packet is received
before the next packet is transmitted. To cater for round-trip times
that are longer than the interval between transmissions, further missing
packets cause a bell only if the maximum number of unreceived packets has
increased.
-a Audible. Include a bell (ASCII 0x07) character in the output when any
packet is received. This option is ignored if other format options are
present.
aliasで引数を取りたい¶
- csh/tcshでいう
\!*
とか - 結局bashもzshも
alias hoge='(){echo $@}'
とかfunction化するしかないっぽい.
OpenObserve | Open Source Observability Platform for Logs, Metrics, Traces, and More – Your Ultimate Dashboard for Alerts and Insights¶
pythonでmainを定義するのはなぜか¶
def a():
pass
def main():
return 0
if __name__ == "__main__":
sys.exit(main())
というよくあるパターン.この形式にするメリットがいくつかある
if __name__ == "__main__":
で実行を制御することでimportしても単体として呼び出しても利用できる- このブロックなしに生で描くと,importで呼び出されても実行されてしまう
def main():
してif __name__ == "__main__":
から呼ぶことでvariablesのスコープを明らかにできるif __name__ == "__main__":
にmain()
の処理を展開して書いてしまうと,variablesがglobalになってしまうので,def main()
して閉じ込められるメリットがある
- 上記のような機能的な部分もありつつ,単に"見やすい"などの理由で採用されることもしばしば.
IAM permissions reference | IAM Documentation | Google Cloud¶
- GCPの権限とロールの組み合わせを検索できる.
Rui Ueyama on X: "ifやforループで済むところをポリモーフィズムやコールバックを使って書く必要はない というか多くの場合は普通にifやループで書いてくれた方が読みやすい気がする" / X¶
CommVault、日本のクラウド市場獲得を狙う ~CTCがNTTコミュニケーションズのクラウド環境上でSimpanaの動作対応を確認~ | CommVault Systems Japan株式会社のプレスリリース¶
appolicationでlistenさせるIPでなにが変わるのかの再整理¶
- 0.0.0.0/0, localhost, 127.0.0.1, 10.0.0.1(interface address) など様々な指定方法があるが,それぞれどう違うのかを再整理
pythonでmutable objectを引数とかで渡すときの注意¶
mutable objectに対して変更を加える場合に注意が必要
mutable objectに対してmehtod内部で変更を加える場合,
copy.copy()
,copy.deepcopy()
, default引数をmutableにせずNone
等にして内部処理で初期化する,などの工夫が必要.- リストは
copy.copy()
のほか,slicehoge[:]
でもcopy.copy()
と同様の操作が可能.
>>> _headers = ["Title", "Description", "Remarks"] >>> print(_headers) ['Title', 'Description', 'Remarks'] >>> print(id(_headers)) 4298737984 >>> >>> _headers = _headers[:] >>> print(_headers) ['Title', 'Description', 'Remarks'] >>> print(id(_headers)) 4299265024
- リストは
default argに注意
デフォルト引数の評価は定義したときにしかされない.
- 定義時にdefualt引数の右辺のmutable objectのidを参照する形で初期化されると考える.
- うぉ!Pythonで引数のデフォルト値をミュータブルな型にした結果 #初心者 - Qiita
- Pythonの関数でmutableなデフォルト引数を設定した際の挙動を確認してみる | DevelopersIO
- 8. 複合文 (compound statement) — Python 3.12.7 ドキュメント
デフォルト引数値は関数定義が実行されるときに左から右へ評価されます。 これは、デフォルト引数の式は関数が定義されるときにただ一度だけ評価され、同じ "計算済みの" 値が呼び出しのたびに使用されることを意味します。この仕様を理解しておくことは特に、デフォルト引数値がリストや辞書のようなミュータブルなオブジェクトであるときに重要です: 関数がこのオブジェクトを変更 (例えばリストに要素を追加) すると、このデフォルト引数値が変更の影響を受けてしまします。一般には、これは意図しない動作です。このような動作を避けるには、デフォルト値として None を使い、この値を関数本体の中で明示的にテストします。例えば以下のようにします: def whats_on_the_telly(penguin=None): if penguin is None: penguin = [] penguin.append("property of the zoo") return penguin
None
で受けて中で初期化するべき
>>> def test_method(data=[]): ... data += ["append"] ... return data ... >>> print(test_method()) ['append'] >>> print(test_method()) ['append', 'append'] >>>
>>> def test_method(data=None): ... data = [] if data is None else data ... data += ["append"] ... return data ... >>> print(test_method()) ['append'] >>> print(test_method()) ['append'] >>>
qcow2を小さくする¶
- zero埋め領域の開放,圧縮
qemu-img convert -O qcow2 hoge.qcow2.orig hoge.qcow2
- zero埋めされた領域が省略される
- つまり,diskができるだけzero埋めされていたほうが小さくなる.
- filesystem上から削除されていても,実体として消えてないとimageとしては未開放扱いにみえるので,ddとかでfs的に開放されているが実体が残っている領域をzero埋めするとより効率が良い
dd if=/dev/zero of=/tmp/hoge && rm -f /tmp/hoge
- zero埋めされた領域が省略される
qemu-img convert -c -O qcow2 hoge.qcow2.orig hoge.qcow2
- compress付き
'-c' indicates that target image must be compressed (qcow format only)
- compress付き
- 事前事後確認
qemu-img info hoge.qcow2
- image sizeとか実領域sizeがわかる
コンデンサマイクのファンタム電源とプラグインパワーの違い¶
- ファンタム電源: (12V, 24V,) 48V, DC12~52V
- プラグインパワー: 2〜5Vとか1〜7V程度でメーカーによってまちまち
- ref: [映像クリエイターが知るべき録音術]Vol.02 誤解が多いマイクの種類と用途について考える - PRONEWS : 動画制作のあらゆる情報が集まるトータルガイド
- よく使われるシリーズ
- SM58
- BETA58A
- SM63
- よく使われるシリーズ
- 1119 :ファンタムパワーとプラグインパワーは全く違いますよ | ShinさんのPA工作室 (Shin's PA workshop)
- プラグインパワー(バイアス)とファンタム電源の違い - SHURE
ファンタム電源は、バランスオーディオ信号と同じワイヤー上に、DC12~52Vを乗せます。
プラグインパワーでは、安価なコンデンサーマイクロホン内部のJFET電源用にDC5Vを供給します。
MySQLの照合順序の設定をそろそろちゃんと整理しておく #Database - Qiita¶
utf8mb4 文字コード
bin コードのまま
general MySQL独自規則
unicode Unicode 4.0.0
unicode_0520 Unicode 5.2.0
0900 Unicode 9.0.0
ja_0900 Unicode 9.0.0 + 日本語
ai Accent Insensitive アクセント違いを区別しない
as Accent Sensitive アクセント違いを区別する
ci Case Insensitive 大文字小文字を区別しない
cs Case Sensitive 大文字小文字は区別する
ks Kana Sensitive カタカナひらがなを区別する
現在のOracle Databaseでも、CESU-8を「UTF8」として、「普通のUTF-8」を「AL32UTF8」として扱っているため注意を要する。
MySQLでも「utf8」を指定した場合は4オクテット列が扱えず、CESU-8相当の符号化を必要とする
(4オクテット列対応のUTF-8は「utf8mb4」として別途定義されているが、MySQL 5.5.3以降でないと使用できない[9])。
MYSQLにおける utf-8
は utf8mb3
相当(3bytes max)の意味なので,MYSQL 5.5.3以降サポートの utf8mb4
で4bytes対応(通常のutf-8)させることでサロゲートペア(CESU-8)を利用せず一般的な4bytes maxのutf-8で扱うことができる
utf-8にサロゲートペアなんてない!はおおむねあっているが,このCESU-8(Compatibility Encoding Scheme for UTF-16: 8-Bit)の世界においては存在する(utf-16でサロゲートペアが必要なコードポイントに対して,CESU-8のペアを用いずに別のバイト(U+10000–U+10FFFFの符号位置)にmapする方式もある).歴史的経緯(unicode2.0, BMPのサポート(BMPは3bytesで表現できるため))によりutf-8のバイト長は3bytes maxとされていたところから,4bytes maxと変更された(unicode 3.1の拡張領域のサポート)ことによる.
- ユニコード戦記あたりを読むと良い
- utf-32が最も考えやすいが,固定長で効率が良くない.
- utf-16と同様にendian, BOMのありなしがある.
- utf-16だと基本的には2bytes固定長(UCS-2)であるためutf-32よりは効率がよいが,サポートするコードポイント範囲の増加により表現しきれず,サロゲートペア(UCS-4)を用いた計4bytesにより1文字を表現するものがある.
- endianが2通りあり,決定的なものとしてutf-16be(big endian), utf-16le(little endian)がある(これらにはBOMは付与されない(が,付与されていた場合でも独自に解釈するものもある)). BOM(byte order mark, U+FEFF)が先頭に付与させ,これを用いてBE/LEを区別させるものをutf-16と呼ぶ.
- utf-8ではMSBの有無によりasciiとそれ以外を区別し,上位ビットのビットパターンによってバイト長が異なる可変バイト長により表現する.
- 定義はISO/IEC 10646(UCS Transformation Format 8), Unicode(Unicode Transformation Format-8).コード重複範囲において互換性がある.
- つくったのはken thompson
- Unicodeがどんな風にUTF-8に割当てられているか - 備忘帳 - オレンジ工房
- (プログラマのための) いまさら聞けない標準規格の話 第1回 文字コード概要編 | オブジェクトの広場
- Unicode―文字コード入門―
[原因]と[要求される結果]が,(数学的な解釈とは異なる概念としての)必要十分条件あたりを考えるうえでのベン図のイメージがしやすいかも¶
python/kubernetes/base/config/incluster_config.py at f414832bb05b946eb1758df12f08806b44dd315e · kubernetes-client/python · GitHub¶
ロボットの自由度 | 安長電機株式会社¶
- 人間の腕は7自由度あるという話