suer TIL

Linuxes

LINUX
2025-08-11 2025-08-11
eye catch

dateコマンドでファイルの最終更新日時を取得する(date -r)

date -r ls -lコマンドでファイルの更新日時を取得できる。 しかし更新日時の他に権限やオーナーなどの情報も表示されるため、シェルスクリプトなどで日時だけ欲しい場合などに不便。
LINUX
2025-05-28 2025-05-28
eye catch

jqコマンドでURIエンコード

jqコマンドでURIエンコーディング 以下のように@uriフィルターを使用してURIエンコードができる。 $ echo -n '"テスト"' | jq '@uri' "%E3%83%86%E3%82%B9%E3%83%88" @uriフィルターはURIエンコードを行う。 入力をRawモードで扱う -Rオプションを指定すると、入力がJSON形式ではなくただの文字列(Rawモード)で扱える。 先述のコマンド例ではダブルクオートで囲って無理やりJSONとしているが、Rawモードを使用するとそのまま文字列を扱える。
LINUX
2025-05-27 2025-05-27
eye catch

【Shell Script】長い処理を待っている間に別の処理を実行する

シェルスクリプトで長い処理を待っている間に別の処理を実行する 長いコマンドを処理している間に別のコマンドを実行したい場合、以下のようにすればよい。 long_command & # 長い処理をバックグラウンドで実行 jobid=$! # プロセスIDを取得 other_command # 待っている間に別の処理を実行 wait $jobid # 長い処理が終わるのを待つ &で長い処理をバックグラウンドで実行し、$!でそのプロセスIDを取得する。 other_commandで待っている間に別の処理を実行する。other_commandは&をつけずに実行しているのでブロックする。 wait $jobidで長い処理が終わるのを待つ。 プロセスIDの変数 $!は直前にバックグラウンドで実行したジョブのプロセスIDを取得するための変数。 後の処理でkillしたり、ジョブの状態を確認したりするために使用できる。
LINUX
2025-05-27 2025-05-27
eye catch

Linux OS のディストリビューションとバージョンをざっくりと確認する

Linux OS のディストリビューションとバージョンを確認する方法 Linux OSの多くのディストリビューションでは/etc/os-releaseが存在し、OSのディストリビューション名やバージョン情報が記載されている。 /etc/os-releaseが存在しない場合もあるが、例えばAmazon Linux 2023では/etc/system-releaseや/etc/amazon-linux-releaseが存在する。 これらの/etc/*-releaseファイルをすべて見ればどこかにはOSのディストリビューション名やバージョン情報を取得できる。
LINUX
2025-05-25 2025-05-25
eye catch

【Docker】docker-composeでホスト名を指定して立ち上げる

docker-composeでホスト名を指定して立ち上げる docker-composeでたちあげるコンテナのホスト名を指定するにはhostnameプロパティを使う。 services: web: image: rockylinux:9.3 command: tail -f /dev/null hostname: ホスト名 例 例えば以下のようにhostnameプロパティを指定する。
LINUX
2025-02-02 2025-02-02
eye catch

findコマンドだけで空フォルダを一括削除する(find -empty -deleteオプション)

findコマンドだけで空フォルダを一括削除(-empty -deleteオプション) findコマンドを使って空フォルダを一括削除するには以下のようにする。 find /path/to/dir -type d -empty -delete オプションの意味は以下の通り。 -type d : ディレクトリを対象にする -empty : 空のディレクトリを対象にする -delete : マッチしたディレクトリを削除する 上記コマンドは/path/to/dir以下の空のディレクトリを再帰的に削除する。
LINUX
2025-01-10 2025-01-10
eye catch

【unzip】大きなzipファイルをunzipで展開する

注意 展開後サイズが4GB以上のzipファイルをunzipファイルで展開できないのはzip bombの可能性を考慮しているため。 以降のコマンドの実行は自分で作ったzipファイルであるなど信頼できる場合に限ること。 大きなzipファイルをunzipで展開した場合のエラー 展開後サイズが4GB以上のzipファイルをunzipファイルで展開しようとすると以下のようなエラーが発生する。
LINUX
2024-12-13 2024-12-13
eye catch

【Wezterm】カレントディレクトリをホームにして新規タブを開くショートカット

Weztermの新規タブ 新規タブを開くために+ボタンをクリックすると、新しいシェルのカレントディレクトリは最後に開いていたタブのディレクトリと同じになる。 iTerm2のデフォルト設定では、新規タブを開くとホームディレクトリがカレントディレクトリになる。 Weztermでも同様の設定としたい。
LINUX
2024-12-07 2024-12-07
eye catch

【Docker】docker compose でホストの環境変数をコンテナに引き継ぐ

docker composeでホストの環境変数を引き継ぎたい docker-compose.ymlをバージョン管理していてパスワードやトークンなどの機密情報をコンテナに渡したい場合、 docker-compose.ymlに直接書くのを避けたい。
LINUX
2024-10-12 2024-10-12
eye catch

grep コマンドでマッチした行の前後も表示する

マッチした前後も表示する grepコマンドでマッチした行の前後数行も表示するには-数字オプションを指定する。 $ cat test.txt aaa bbb ccc ddd eee fff ggg $ grep -2 ddd test.txt bbb ccc ddd eee fff -2オプションを指定しているのでマッチしたdddの行の前後2行が表示される。
LINUX
2024-09-01 2024-09-01
  • ««
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
  • »»
AUTHOR
author image
suer
ふつうのプログラマ
LATESTS
eye catch
Rocky Linux に dnf (yum) で Redis 6 をインストールする
LINUX
2025-08-11 2025-08-11
eye catch
GitHub Actions で Checks を実行できる Pull Request を作成する
LINUX
2025-07-13 2025-07-13
eye catch
【fluentbit】利用可能なプラグインを調べる
LINUX
2025-06-19 2025-06-19
eye catch
【tig】カスタムキーバインドを追加してGit操作を効率化する
LINUX
2025-06-18 2025-06-18
eye catch
【Shell Script】グループコマンドで複数コマンド出力をまとめてリダイレクト
LINUX
2025-06-17 2025-06-17
  • ホーム
  • お問い合わせ
  • プライバシーポリシー

© 2022 suer