bashコマンド覚え書き

2025/11/06

あるファイル、ディレクトを探す

find /path/to/dir -name filename -type f
オプション
判別式 -type f ファイルのみを対象とし検索する。
判別式 -type d ディレクトリを対象とし検索する。

デバッグ、解析用

そのスクリプトが実行されたか、ファイル名、行数等をログファイルに追記
echo "$(date '+%Y-%m-%d %H:%M:%S') | $(realpath ${BASH_SOURCE[0]}) | Line:${LINENO} | 任意のコメント" >> ~/.usrlog/startlog
本格的には。
#!/bin/bash
# ログ関数の定義
log_write() {
    local comment="$1"
    echo "$(date '+%Y-%m-%d %H:%M:%S') | ${BASH_SOURCE[1]##*/} | Line:${BASH_LINENO[0]} | ${comment}" >> ~/.usrlog/startlog
}

# 使用例
log_write "スクリプト開始"
some_command
log_write "処理1完了"

あるディレクトリ以下に、xxxのワードが入っているファイルを検索

使用例
# カレントディレクトリ以下で"xxx"を検索
grep -r -l "xxx" .

# /home/user以下で大文字小文字を区別せず"xxx"を検索
grep -r -l -i "xxx" /home/user

# 特定の拡張子のファイルのみを検索
find /path/to/directory -name "*.txt" -exec grep -l "xxx" {} ;

# バイナリファイルを除外して検索
grep -r -l -I "xxx" /path/to/directory

grepの主要オプション説明

  • r または --recursive: サブディレクトリも再帰的に検索
  • l または --files-with-matches: マッチしたファイル名のみを表示(内容は表示しない)
  • i: 大文字小文字を区別しない
  • n: 行番号も表示
  • c: マッチした行数を表示
  • w: 単語単位で検索(部分一致を除外)

antiX リポジトリにソフト(xxx)があるかどうかを確認するコマンド:

`apt search xxx`
(これは利用可能なパッケージを検索します。antiXはDebianベースなので、aptコマンドが標準です。事前に`sudo apt update`を実行してリポジトリを更新することをおすすめします。)

antiX そのソフトをインストールするコマンド:

`sudo apt install xxx`
(インストール前に`sudo apt update`を実行し、依存関係を確認してください。)

AlmaLinux 9の場合(RPMベースのシステムで、dnfパッケージマネージャを使用):

リポジトリにインストールしたいソフト xxx があるかどうかの確認コマンド:

`dnf search xxx`
(事前に`sudo dnf makecache`を実行してリポジトリ情報を更新することをおすすめします。)

そのソフトをインストールするコマンド:

`sudo dnf install xxx`
(インストール前に`sudo dnf update`を実行してシステムを最新に保つと良いです。)