awkは、UNIX登場初期からgrepやsedなどと並んで代表的なコマンドラインツールとして使われてきました。その名称が、作者であるAho氏、Weinberger氏、Kernighan氏の三者の名前からとったものであるというエピソードも非常に有名です。 そしてこの三人の作者が執筆した書籍「The AWK Programming Language」(邦題:プログラミング言語AWK)は、awkのバイブルと言ってよい書籍でしょう。 日本で1989年に第1版が発行されたこの「プログラミング言語AWK」が、35年ぶりに第2版に改訂され、今年(2024年)5月16日にオライリー・ジャパンから発売されることが分かりました(Amazon、楽天ブックス)。 著者は第1版と変わらず、Alfred V. Aho氏、Brian W. Kernighan氏、Peter J. Weinberger氏です。 下記はAm
ホットエントリに挙がっていたこの記事に触発されて書きました。 はじめに 私は、さすらいの野良エンジニアです。システム開発歴は20年以上になり、現在は在宅で仕事をしています。先日ふと思い立って、サブで使っていたラップトップにUbuntuを入れました。その結果あまりに良すぎてメイン環境として普段使いするようになり、ラップトップではゲーミング性能が足りないので、余っていたデスクトップ機にもインストールして更に快適になってしまいました。 以降前の私の状況は下記です。 メインで使っていたのは、Windowsデスクトップ(RTX2060でゲームもする) サブ機としてM1 Macbook AirとWindowsラップトップ(XPS13)を使っていた その他、N100ミニPCにUbuntuを入れてちょっとしたサーバーとして使用 Windowsデスクトップ(RTX2060)が一台余っていた ここから、現在の
はじめに 2023年、長い時を経て awk がとうとう Unicode (UTF-8) と CSV に対応しました 🎉🎉🎉 awk で日本語がうまく扱えない(場合がある)、Excel が出力する CSV ファイルが扱えない(場合がある)、といった問題が解決に向けて一歩に進みます。 去年、本家 awk (One True Awk, nawk) に Unicode サポートが Brian Kernighan の手によって追加されたと話題になった(参照)ことを覚えているでしょうか? Brian Kernighan が誰だか知らない方がいるかもしれないので説明すると、オリジナルの awk の開発者の一人で awk の頭文字、Alfred Aho、Peter Weinberger、Brian Kernighan の一人です。通称「K&R」の「プログラミング言語C」や「プログラミング言語AWK」
序 最近、安易に建てられた危険なサーバーが増えているため、サーバーセキュリティを鑑みた基本的な設定や構成はどういうものかという話をする。 本記事では具体的な設定や構築を説明するが、環境や前提、用途などもあるため、これを真似すれば安全ということではない。 セキュリティは銀の弾丸があるわけではなく、全ての要素を合わせて考えたア上での最適を導かねばならない。それがセキュリティの難しいところでもある。 本記事はセキュリティが未熟だと自認する人にとっては参考になる内容だと思うが、どちらかというと、本記事の内容が当たり前に「すでに理解できている内容」になっていない人は、サーバーを建てるべきではない(危険な未熟の段階である)ということが重要であり、各々が自身の技量を測る指標として使ってもらえればと思う。 宣誓の儀 「サーバーを破られるということは、すなわち犯罪に加担するということである」 この言葉をしっ
この記事は Rust Advent Calendar 2023 シリーズ2 の1日目の記事である。 Rustは良くも悪くもシステムプログラミング言語なので、何も工夫しなければデバッグの体験がC言語と同じレベルになってしまう。例えば「rust lldb」でググると上位に Debugging Rust programs with LLDB is a nightmare というスレッドが出てきてしまう。 使うべきツールを知っていれば幾分かマシな体験にできる。Rustコンパイラはデバッガとして LLDB, GDB, WinDbg/CDB をサポート していて、僕はWinDbGは10年くらい触ってないので、この記事ではLLDBとGDBについて書く。 LLDB Apple SiliconのMacだとGDBが使えないので、必然的にLLDBを使うことになる。 CodeLLDB GDBと同じく、LLDBにも
以下の文書はBashを使う前提の話。 Bashにはコマンド置換(Command substitution)というのがある。$(another-command)のように、$()でコマンドを括る記法だ。これを利用すると、括弧で括られたコマンドが実行され、その標準出力が文字列として取り出され、$()全体を置き換える。シェルスクリプトでは非常によく見る技術だ。 この$()でファイルの内容を読み出すというのを最近見た。このような用法は非常によく見る。 foo-command $(cat params.txt) しかし、より良い書き方があるのでこれを提唱したい。$(< params.txt)と書くことで全く同等のことができる。しかも速いのでこちらのほうが完全に上位互換となる。 foo-command $(< params.txt) この方法はBashのドキュメントのコマンド置換のコーナーにちゃんと書か
GoProなどのカメラで長いムービーを撮影すると、一定の時間やファイル容量ごとにムービーが細かく分割されることがあります。分割されたムービーをムービー編集アプリでつなぎ合わせて出力しようとするとエンコードに長い時間がかかってしまいますが、無料で公開されている「LosslessCut」を使えば無劣化かつ爆速で結合できるとのことなので、実際に使ってみました。 GitHub - mifi/lossless-cut: The swiss army knife of lossless video/audio editing https://github.com/mifi/lossless-cut ◆容量の大きなムービーは分割されがち 容量の大きなムービーファイルが分割される実例が以下。GoPro HERO12 Blackのバッテリー性能検証のために1時間12分46秒の4K・60fpsムービーを撮影し
MacでDocker DesktopやWSLのようなコンテナ/仮想マシン環境を実現する「OrbStack 1.0」リリース Mac上でDocker Desktopのように手軽にコンテナ環境を構築し、またWindowsのWindows Subsystem for Linux(WSL)のようにmacOS上にLinux仮想マシン環境を構築できるソフトウェア「OrbStack 1.0」がリリースされました。 Introducing OrbStack 1.0: the fast, light, easy way to run Docker containers & Linuxhttps://t.co/wGGy4J16h0 pic.twitter.com/BVdABDyf01 — OrbStack (@OrbStack) September 21, 2023 OrbStackはコンテナエンジンとしてD
「まだ700台も残っているのか」――。富士通と米Amazon Web Services(アマゾン・ウェブ・サービス、AWS)の会見を聞いた筆者の感想だ。両社は2024年3月18日、グローバルパートナーシップの拡大と顧客システムのモダナイゼーション支援を発表した。その中で、富士通の島津めぐみ執行役員副社長COO (サービスデリバリー担当)(現職)が同社のメインフレーム残存数に触れたのだ。 島津副社長によれば、現在約700台のメインフレームと約9400台のUNIXサーバーが稼働しているという。富士通は2030年度末にメインフレームの製造・販売から撤退し、5年後の2035年度末で保守を終える。UNIXサーバーは2029年度下期に製造・販売を終了し、2034年度中に保守を終える予定だ。 脱メインフレームは間に合わない 果たして2035年度末までに700台あるメインフレームをすべて撤廃できるだろうか
オラクルもRed Hatに反論。RHELクローンOSへの非難は、競合他社を減らして儲けようとしているからではないか Red Hatは先月(2023年6月)、Red Hat Enterprise Linux(RHEL)のソースコードの一般公開を事実上終了させる措置を発表し、さらにRHELのクローンOSを提供しているベンダを「オープンソースに対する脅威だ」と非難する内容をブログで明らかにすることで、RHELのクローンOSの存在を否定する意志を明確にしました。 参考:Red HatがクローンOSベンダを非難、「付加価値もなくコードをリビルドするだけなら、それはオープンソースに対する脅威だ」と これによってRHELのクローンOSを開発する作業は従来よりも困難になりました。 RHELはエンタープライズLinuxにおける事実上の標準となっており、クローンOSもそのエコシステムの一部になっている現状にお
ここまで散々体温計付きカメラを分解してきましたが、久しぶりに面白い案件にぶち当たってしまいました。 これにどれだけの何が残ってるかまだわかんないけど、このラベルが貼ってあるガラクタを、「これが検温カメラの型番だと思ってヤフオクに出品するレベルの人間の手に渡ってる」の何かしらの問題だと思う どっかのショップ店頭の備品を誰か売ったんかな、と思ってたんだけど... https://t.co/XN1g9XVBwQ pic.twitter.com/vv8Ja9VFL5 — ひろみつ (@bakueikozo) 2023年8月8日 大元の所有者に連絡を投げたつもりですが、お盆進行なのか全然返事が来ませんね。 つまんないので、今回入手した検温カメラからどうやって画像を取り出したかを記録しておきましょう。 このカメラ、普通に立ち上げるだけで、ネットワークインターフェイスは有効化され、 192.168.1.
...and how to ptrace the entry point and m3ss w1th da stack. In this article, you will learn what happens inside the Linux Kernel when a process calls execve(), how the Kernel prepares the stack and how control is then passed to the userland process for execution. I had to learn this for the development of Zapper - a Linux tool to delete all command line options from any process (without needing r
ドイツのシュレースヴィヒ=ホルシュタイン州のデジタル担当大臣であるディルク・シュレーダー氏が、州政府のシステムをオープンソースのソフトウェアへと切り替えることを発表しました。これにより、約3万人の職員が使うOSがWindowsからLinuxへと変わり、Microsoft OfficeがLibreOfficeへと切り替えられる予定です。 schleswig-holstein.de - Der Ministerpräsident - Staatskanzlei und Bundesangelegenheiten - Einstieg in den Umstieg: Schleswig-Holstein setzt auf einen digital souveränen IT-Arbeitsplatz in der Landesverwaltung https://www.schleswig-
この記事はNuco Advent Calendar 2023の16日目の記事です。 1. はじめに 世の中には、複雑な計算や面倒な分析を1行で済ませてくれるような便利なパッケージが数多くあります。それらをインストールするときには、以下のようなOSやプログラム言語に応じた簡単なコマンドを実行していることでしょう。 あなたがパッケージをインストールする裏で、それらのパッケージを管理するシステムが地獄のような処理を人知れず行なっていることはご存知でしたか? 本稿ではそんな縁の下の力持ちであるパッケージ管理システムが、一体どのような仕組みで動いているのか、その全貌を明らかにしていきたいと思います! 弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方
I’m kinda shocked. Windows actually got good for web developers. Between VSCode, WSL, and Intel’s latest desktop chips, I’ve been living with a PC for over a week that runs my programming tests faster than an M3 Max, ships with an excellent window manager out-the-box, and generally feels like a completely viable alternative to macOS for working with the web. Hell, not just viable, but better in ma
Appleが、「macOS」の最初のバージョンをリリースしてから、20年以上が経ちました。この間に様々な変更や改良が行なわれています。 MacユーザーがWindowsに乗り換えない7つの理由 macOS初心者でも長年の愛好者でも、macOSに飽きたとしても、別のOSに切り替える前に、このまま使い続けることを検討しましょう。 今回は、macOSからWindowsに切り替えないほうがいい7つの理由をお教えします。 1. Windowsのほうが安全性が低い完璧に絶対に安全だとは言いませんが、macOSの方がWindowsよりもマルウェアに感染する確率は低いです。 これにはかなり多くの理由があります。ひとつは、Windowsの方が市場が大きいので、ターゲットになりやすいということ。ユーザー数が非常に多いので、WindowsはmacOSよりもサイバー攻撃の犠牲になることが多かったのです。 また、Ap
ドイツの州、3万台の自治体PCを「Linux」「LibreOffice」に移行すると発表:欧州委員会のGDPR違反も影響か The Document Foundationが指摘 ドイツ北部のシュレースヴィヒ=ホルシュタイン州は、自治体のPC3万台で使用しているWindowsとMicrosoft OfficeをLinuxとLibreOfficeに移行すると発表した。LibreOfficeの開発元であるThe Document Foundationは、同州が移行を決めた背景として「欧州委員会のGDPR違反」を挙げている。 ドイツ北部のシュレースヴィヒ=ホルシュタイン州は2024年4月4日(ドイツ時間)、自治体のPC3万台で使用しているWindowsとMicrosoft OfficeをLinuxとLibreOffice(およびその他のフリーオープンソースソフトウェア〈FOSS〉)に移行すると発表
はじめに Turing株式会社ソフトウェアエンジニアの堀ノ内です! 私が所属する自動運転チームでは2024 ~ 2025年に発売予定の自動車に搭載する自動運転システムの開発を行っています。Turingでは車両前方に取り付けられたカメラの画像を入力とし、機械学習モデルが進むべき経路を推論、その経路に沿って実際に車両を動かすための制御信号(ステアリング、アクセル、ブレーキ)をCANで車両に送信することで以下の画像のような自動運転を実現しています。 今回のブログでは以下について記載し、私達のチームの仕事内容について知って頂くきっかけになればと思います。 Turingの自動運転システムの紹介 GMSLカメラの評価と発生した問題 Linuxカーネル及びドライバのデバッグ Turingの自動運転システム Turingでは「カメラ画像入力 → 機械学習モデルで経路を推論 → 車両制御」の流れを実現するた
JavaScriptランタイムのBunは、新機能としてシェルスクリプトをJavaScriptもしくはTypeScriptで記述し、特定のOSに依存せずに実行できる「Bun Shell」を発表しました。 シェルスクリプトは特定のシェルに依存するもの LinuxやmacOS、WindowsなどのOSは一般に、「シェル」(Shell)と呼ばれる機能を備えています。 シェルはコマンドラインインターフェイスなどのユーザーとの対話機能を備えており、例えばLinuxのコマンドラインで「ls」コマンドを打ち込むとファイルの一覧が返ってくるという動作はシェルが提供しています。 そしてシェルでは一般に、こうしたコマンドを複数つなげた一連の動作をスクリプトとして定義し実行できる「シェルスクリプト」が利用可能です。例えば、次のシェルスクリプトは、「ls」コマンドによるファイルの一覧をファイル「list.txt」に
構築する開発環境について ここで構築する開発環境は次のようなものを考えています。 仮想化ソフトウェア (Hyper-V + WSL2 + VirtualBox) コンテナソフトウェア (Docker Compose + Docker Engine) 開発エディタ (Visual Studio Code ) バージョン管理システム (Git + Git for Windows + Forgejo) CI/CD (githooks or Gitness or Woodpecker CI or GitBucket + gitbucket-ci-plugin or Jenkins) Intel N100 ミニ PC の特徴は低価格でありながら、仮想化機能を備えており、VirtualBox や Hyper-V といった仮想化ソフトウェアを動作できることが大きな魅力です。メモリ 16GB で SSD
こんにちは、Sally社 CTO の @aitaro です。 マーダーミステリーアプリ「ウズ」とマダミス制作ツール「ウズスタジオ」、マダミス情報サイト「マダミス.jp」を開発しています。 はじめに この記事ではウズの開発当初から利用していた Docker Compose をやめることにした背景についてご紹介します。 Docker Compose は各マシンの開発環境での差異を吸収するというメリットがあり、多くの開発現場で導入されていますが、Docker Composeの抱えているデメリットを勘案して、最終的に一部を残して辞める決断をしました。 Docker Composeの特徴 Docker Composeは、複数のコンテナを定義し、管理するためのツールです。ウズの開発環境では、バックエンド、フロントエンド、データベースなどをそれぞれコンテナ化して、Composeで一括管理していました。こ
2024年6月10日 長年にわたりISOイメージ形式で配布してきた「Ubuntu日本語Remix」ですが、Ubuntu 24.04 LTSではリリースしないことに決定しましたのでお知らせします。 理由は以下の通りです。 新しいインストーラー採用に伴うカスタマイズ難易度の増加 Ubuntu 24.04 LTSから新しいインストーラーが導入され、ISOイメージのファイル構成が変更されました。この変更により、ISOイメージをカスタマイズすることが難しくなりました。 多言語ライブ環境の非対応化 Ubuntu 24.04 LTSの公式ISOイメージは英語以外のライブ環境に対応しておらず、日本語ライブ環境を実現するためには大きな変更が必要となりました。 Ubuntu日本語RemixのISOイメージの主な利点は、日本語ライブ環境が使えること、およびインターネット未接続状態でも日本語のデスクトップ環境をス
最近、wayland移行も大分安定して、デスクトップで利用するアプリも多少変化したので、最近利用しているものをまとめておこうと思う。 基本的にGNONEやKDE Plasmaみたいな重厚なデスクトップ環境は使わないタイプなので、そういうラインナップになっている。 開発で必須、みたいなやつはこの記事には余り入れてない。 ウインドウマネージャー Hyprland waylandで動作するタイル型ウインドウマネージャー。ヌルヌル動くのが気持ち良いだけでなく、機能的にもよく出来ている。開発が活発なのも良い。 waylandで画面共有のために利用されるxdg-desktop-portalのために独自実装を持っていてswayでは出来なかったウインドウ単位の画面共有が出来る。 という訳でwaylandのタイル型ウインドウマネージャーといえばswayがメジャーだが、最近はHyprlandを利用している。
03/29/2024にxzの脆弱性(バックドア埋め込み: Critical: CVE-2024-3094)が公開されました。Fedora Linux 40beta, Fedora rawhide, Debian unstable等の一部のOpenSSHにも使われており、バックドアを利用してログインが出来る状態だったという話も出ています。ソフトウェアサプライチェーン攻撃の一つとも捉えられており、いずれSBOMと関係する話として取り上げられると思います。 (SBOMの話、VEXの話はこちら)。 今回はこちらの脆弱性の概要と、各ディストリビューションの対応について纏めます。 【04/01/2024 09:45更新】情報が纏まっているサイトを更新しました。また、piyologさんからリンクを貼っていただいていたので、こちらも載せています。その他、「xz –version」を実行するのもだめという話
この5つがよく使うやつですよね。 「bzip2やxzは?」だと! ナニソレオイシイノ? とにかくイメージで印象づける 脳の海馬にtarコマンドのオプションを刻み込むためには視覚的なイメージを刻み込むのが一番です。 アーカイブの展開時と作成時のxとcをどう覚えるか? まずtarコマンドはアーカイブの 展開時には「x」 作成時には「c」 を使います。 これをイメージに落とし込みましょう。 展開時はアーカイブされたファイルがX状に広がっていくイメージ xはアーカイブされたファイルがx状に解き放たれていくイメージを持ちましょう。 アーカイブ作成はファイルが包み込まれるイメージ cはcという文字にファイルが包み込まれるイメージを持ちましょう。 このイメージで展開時と圧縮時で 「どっちだっけ?」 となることはなくなるはずです! 他のvとfはどうする? xとcをイメージに落とし込みました。次はvとfを見
Red HatにRocky LinuxとAlmaLinuxが反論。OSSの精神と目的に違反している、ダウンストリームのリビルドは価値をもたらす、など Red Hatは6月、Red Hat Enterprise Linux(RHEL)のクローンOSベンダに対して排除する方向性を打ち出しました。このことが、多くの議論や影響を引き起こしています。 Red Hatが起こしたアクションは2つです。1つはCentOS StreamをRed Hat Enterprise Linux(RHEL)関連の唯一パブリックなソースコードリリースのリポジトリにすると発表し、事実上、RHELのソースコードの一般公開を取りやめにしたことです。 参考:Red Hat、今後はCentOS StreamがRHEL関連のパブリックなソースコードの唯一のリポジトリになると発表 RHELのソースコードへのアクセスは有料のサブスクリ
「llamafile」は大規模言語モデルのモデルやウェイトの情報が1つの実行ファイルにまとまった形式のファイルです。Linux・macOS・Windows・FreeBSD・NetBSD・OpenBSDという6つのOS上でインストール不要で大規模言語モデルを動作させることが可能とのことなので、実際にWindowsおよびLinuxディストリビューションの1つであるDebian上で動かしてみました。 Mozilla-Ocho/llamafile: Distribute and run LLMs with a single file. https://github.com/Mozilla-Ocho/llamafile#readme Introducing llamafile - Mozilla Hacks - the Web developer blog https://hacks.mozilla
AlmaLinux、今後はRed Hat Enterprise LinuxのABI互換を目指すと発表。これまでの「バグまでRHEL互換」の路線を変更 2020年にRed Hatは、Red Hat Enterprise Linux互換OSとして使われてきたCentOSの開発中止を発表しました。 これをきっかけに、CentOSの後継を担うことを目指していくつかのRHELクローンOSが登場します。その代表的なLinuxディストリビューションの1つがAlmaLinuxです。 AlmaLinuxはRHELのソースコードを基に、RHELのバグまで含めて完全にRHEL互換をうたうLinuxディストリビューションを開発、提供してきました。 しかしRed Hatは先月(2023年6月)、RHELのソースコードの一般公開を事実上終了するとともに、クローンOSベンダに対して「付加価値もなくコードをリビルドするだ
IT業界にいると「勉強したほうがいい」「エンジニアには必須だ」などと言われることも多い「Docker、Linux、AWS」などのサーバーに関するトピック。 これらは、一つ勉強しようとすると必ず他の技術もついてくる、互いに切っても切り離せない技術です。そのためか、学びはじめのハードルを高く感じてしまうことも。今回はサーバー関連の入門記事をまとめてご紹介します。易しい解説で「サーバーってこんな感じ」と掴むことからはじめてみてください。 こんな方におすすめ □ インフラ系に興味のある方 □ サーバー関連で何から始めていいかわからない方 □ Docker、Linux、AWSのどれかを始めたけれど、苦戦している方 Pickup 1:インフラ系きほんのき、「サーバー」をゆるく解説 この記事でわかること ・サーバーは何をするもの? ・ウェブサーバー、メールサーバー、データベースサーバー違いは? 2:サー
Everything I Know About the XZ Backdoor stateevergreeninblogdate3/29/2024Please note: This is being updated in real-time. The intent is to make sense of lots of simultaneous discoveries regarding this backdoor. last updated: 5:30 EST, on April 2nd Update: The GitHub page for xz has been suspended. 2021JiaT75 (Jia Tan) creates their GitHub account. The first commits they make are not to xz, but the
Windows 11 23H2 以降、エクスプローラーが 7z、tar などの解凍に対応しました。さらに、Build 25992 では圧縮も可能となったようです。7-zip を追加インストールしなくてもこれらのアーカイブを取り扱えるのは嬉しいですよね。 1 一方で、PowerShell の Expand-Archive コマンドレットは拡張されておらず、ZIP 形式の解凍しかできません。 GAC Version Location --- ------- -------- False v4.0.30319 C:\Program Files\WindowsApps\Microsoft.PowerShell_7.… OperationStopped: File 'E:\test\archive.7z' does not appear to be a valid zip archive. せっかく
仕事でsedのコードをパパッと書いて使ったら、コードレビューで動かんと言われてしまった。そういえば、同僚はMacで、おれはLinuxだったな。 まぁsedならよくある話なので、しょうがないと思ってawkで同じことをした。awkは比較的もうちょっと互換性がある気がしているからだ(どっこいどっこいな気もする)。 しかしまだ動かないと言う。もう、大絶叫だ。アー。おしまいだ。カスがよ〜〜〜と思いつつ(社会人なので絶叫はしない)、よく調べてみるとmakeの互換性だった。というのも、試しにbrew install makeしてGNU Makeで試してみてくれ、と言ったら、あっさり動いたからである。実はsedもawkも悪くなくて、そいつを呼び出してるmakeに互換性がなかった。ごめんな、お前たち悪くなかったよ。でもそれはそうと互換性はない。 define foobarstring ... endef #
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く