- blogs:
- cles::blog
xargs で複数のコマンドを実行する
sh
cli xargs を使って複数のコマンドを一度に実行する方法がないかと思って調べてみました。
sh -c と組み合わせて、以下のような感じで実行しているパターンが多いようです。
例えばこの例だと find で探したファイルに対して chown でオーナーを変えつつ、パーミッションも同時に変更することができます。
† 参考
HFS Explorer を使って Windows から HFS+ のディスクを読み取る
mac
java
hfs 先日、発掘した HFS+ のディスクの内容を読み取るために HFSExplorer というソフトウェアを試してみました。
この手のソフトウェアにしては珍しく Java で書かれた OSS で GitHub でソースコードも公開(unsound/hfsexplorer)されています。ライセンスは GPLv3 。ディスクをローレベルに扱う処理が Java でどのように実装されているのか気になるので、あとでコードをちょっと覗いてみようと思います。
インストーラーを使えばセットアップは簡単ですが、Java 8 以降の JRE については別途インストールすることが必要です。
HFSExplorer is an application that can read Mac-formatted hard disks and disk images.It can read the file systems HFS (Mac OS Standard), HFS+ (Mac OS Extended) and HFSX (Mac OS Extended with case sensitive file names).
HFSExplorer allows you to browse your Mac volumes with a graphical file system browser, extract files (copy to hard disk), view detailed information about the volume and create disk images from the volume.
基本的な使い方はFile メニューから Load file system from deviceを選択し、表示されたダイアログにある Autodetect ボタンを押すと HDD 上の HFS+ のパーティションを選択することができます。選択すると右側のツリービューに HFS+ のパーティションの中身が表示されます。
そのままファイルを個別に操作することもできますが、Tools メニューの Create disk image... を使うとディスクを丸ごと .dmg ファイルに変換できるので、古いディスクからのデータをサルベージする場合にはイメージ化を行ってからファイル操作を行う方が、速度的にもディスクの負担的にも良いと思います。
Java SE の脆弱性に注意(CVE-2022-21449)
java
cve
jpcertcc Java SE の脆弱性 CVE-2022-21449 について JPCERT/CC のアドバイザリが更新されていたのでメモ。
問題になっているのは ECDSA の署名のアルゴリズムでゼロのチェックが抜けていた*1というもので、これによってどんな場合でも署名検証が成功するようになってしまうみたいですね。
いずれにせよ、Java 使っている場合には早めにパッチ適用が必要そうです。
2022年4月Oracle製品のクリティカルパッチアップデートに関する注意喚起
脆弱性が悪用されると、細工したデジタル署名を用いた第三者が、ECDSA署名方式による署名検証を成功させ、不正にデータにアクセスするなどの可能性が指摘されています。詳細および最新の情報については、Oracle Corporationや脆弱性の発見者などが提供する情報を参照いただき、対策実施を検討してください。
† 参考
Oracle のクリティカルパッチアップデートに注意(2022 年 1 月)
oracle
java Oracle のクリティカルパッチアップデートが出ていました。
Java 関連だと JDK 17.0.2, JDK 11.0.14, JDK 8u321 あたりが問題になるところでしょうか。
MySQL や VirtualBox を利用している場合にこれのアップデート確認しておきましょう。
- 2022年1月Oracle製品のクリティカルパッチアップデートに関する注意喚起
- January 2022 Critical Patch Update Released
- Oracle Critical Patch Update Advisory - January 2022
Oracle、2022年1月「Critical Patch Update」を実施 ~497件のセキュリティパッチをリリース - 窓の杜
米Oracleは1月18日(現地時間、以下同)、四半期ごとに実施される定例セキュリティアップデート(Critical Patch Update:CPU)の内容を発表した。「Oracle Java SE」や「MySQL」、「Oracle VM VirtualBox」などの製品で497件の脆弱性が修正されている。
3 年ぶりの LTS となる Java 17 が登場
oracle
java Java 11 のリリース以来、3 年ぶりの LTS となる Java 17 がリリース*1されていたのでメモ。
ライセンス問題で Oracle の JDK を使っている人はかなり減っていると思われるので、Oracle の JDK の新しい LTS がリリースされたと言ってもあまり関係がない人が多いかもしれません。基本的には OpenJDK をベースとしたEclipse Adoptium や Microsoft Build of OpenJDK、Amazon Corretto など自分が使っているディストリビューションの対応にあわせていくことになると思います。
Oracle、「Java 17」を発表 ~3年ぶりの長期サポートリリース(LTS) - 窓の杜
米Oracleは9月14日(現地時間)、プログラミング言語「Java」の最新版「Java 17」を発表した。Java開発キット「Oracle JDK 17」の提供も開始されている。「Java 17」は3年前にリリースされた「Java 11」に続く長期サポートリリース(LTS)で、「Oracle JDK 17」には2029年9月までセキュリティやパフォーマンス、不具合修正のためのアップデートが提供される。
bash の変数と改行
sh シェルスクリプトで echo をするときに、変数をダブルクオートで囲った場合とそうでない場合で挙動が違うことに気付いたのでメモ。
具体的には以下のような感じで、変数内に改行が含まている場合の改行の扱いが変わるようです。
かれこれ 20 年くらいシェルスクリプト書いていますが、こういう決まりがあることに気付いてませんでした。
任意のタイミングで Java アプリケーションの HeapDump を取る
java Java 11 からは hprof がなくなってしまったので、OOM の時以外の任意のタイミングで*1ヒープの内容を簡単にするダンプ方法を調べてみました。
どうやら、HotSpotDiagnosticMXBean*2を直接呼出すしかないようです。
メソッドとして実装するとこんな感じでしょうか。
† 参考
- *1: OOM の時のダンプは起動時に
-XX:+HeapDumpOnOutOfMemoryErrorオプションをつければできる。 - *2: HotSpotDiagnosticMXBean (Java SE 11 & JDK 11 )
OpenJDK 11 の GitHub リポジトリ
java
github OpenJDK のソースを確認したい場合には GitHub の OpenJDK のリポジトリを確認すれば良いと安直に考えていたのですが、覗いてみると Java 11 関連だけでも jdk11, jdk11u, jdk11u-dev と 3 つもあって困ってしまいました。
jdk11 は最終更新が 2018/8 なので Java 11 リリース当初のままのようです。jdk11u-dev には日々、アップデートが入っているようなのでこれは開発用ですね。というわけで、残った jdk11u が最新のリリースが格納されているリポジトリのようなので、一般に使われている Java のコードを確認するためにはこれを見るのが良さそうです。
今回は ArrayList と LinkedList が見たかったので、以下の2つでした。
こういうクラスって最近はあまり更新されていないと思っていたのですが、ちょいちょいアップデートはされているんですね。
git リポジトリのリモート URL を一撃で書き換える ( Linux 編 )
git
sh git のサービス等を乗り換えたりする場合には、ローカルリポジトリのリモート URL を書き換える必要が出てきます。
1つずつやっても良いのですが、いろいろと面倒なので、現在の URL の一部を置換することリモート URL を書き換えるワンライナーを書いてみました。通常、サービスの乗り換えの場合にはリポジトリ名は URL の一部のみが変わるだけだと思うので、これで十分機能するはずです。
ここではリモートの URL が https://example.com/foo/bar.git → https://example.jp/foo/bar.git に変更されると仮定すると、以下のような感じでリモート URL の変更が可能です。
ちなみに、Windows の場合は PowerShel を使って同様の操作ができます。
SH-60L の試作機の飛行試験を開始
SH-60L #三菱重工ニュース📰#三菱重工 は本日、回転翼哨戒機(能力向上型)の試作機の飛行試験を開始しました。
— 三菱重工業株式会社【公式】 (@MHI_GroupJP) May 12, 2021
本日の試験では、当社のテストパイロットが試作機を操縦し、#県営名古屋空港 において約30分間のホバリングを行った後、無事同空港へ着陸しました👇https://t.co/sS6ebkD7qq pic.twitter.com/JUQoGA8Dkd
海自の SH-60K の能力向上型試作機(完成すれば SH-60L)の飛行試験が始まったようです。
見た目は SH-60J と SH-60K のようなわかりやすい見た目の変化もないようですが、どこかで見にいきたいところです。
- sadpkv
- CACHEMANAGER.phpというのはどうだろうかと
- pairb1m
- Lightning のToDoリストを複数のPCで共有できるアドオン
- majodca
- 九州旅行から帰ってきました
- majodca
- 九州旅行から帰ってきました
- hot534
- yum を使って OpenVPN をインストールする
- dresssu3
- NP_Trackbackを騙るトラックバックspamについて
- zippern7o
- NP_SpamBayesJP jp1b
- park81o
- Google Docs をメールフォームとして使う
- fogmpl
- なんで官庁の文章はPDFなんだろうか
- cutjw9
- 即席スライドショーを作る
- frightenlho
- 添付ファイルの容量を表示する「Attachment Sizes」
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(5064)
3 . GitHub が全ての公開リポジトリへのシークレットスキャンを有効に(4200)
4 . 年次の人間ドックへ(4132)
5 . 2023 年分の確定申告完了!(1つめ)(3989)
Academic[574]
Book[155]
Diary[522]
Disaster[101]
Foodlogue[1425]
Game[284]
Goods[805]
Healthcare[341]
Hobby[32]
IT[1195]
Military[343]
misc.[1570]
Mobile[510]
Music[38]
Neta[106]
News[95]
Photo[391]
RealEstate[120]
Security[1178]
SEO Contest[36]
Software[634]
Tips[1886]
Travelogue[1238]
Web[675]
Work[193]
