suer TIL
eye catch
【Shell Script】エラーで途中で止まっても実行される後処理を設定する
trap ‘処理’ EXIT 以下の形式でtrapコマンドを使用して、スクリプトの終了時に必ず実行される処理を設定できる。 trap '処理' EXIT 例えば、スクリプトの終了時にログを出力する場合は以下のように実行する。
LINUX
2025-06-10 2025-06-15
eye catch
sedコマンドで指定した行に文字列を挿入・削除する
サンプルファイル 例として以下のファイルに文字列を挿入・削除する。 aaa bbb ccc ddd eee 行数を指定して文字列を挿入する 指定した行数の前に文字列を挿入するには、行数i 文字列の形式で実行する。 sed '行数i 文字列' ファイル名 例えば上記ファイルの3行目にxxxを挿入する場合は以下のように実行する。
LINUX
2025-06-06 2025-06-06
eye catch
【PostgreSQL】 データベース名を変更する
データベース名を変更する方法 PostgreSQLではデータベース名を変更するためにはALTER DATABASEを使用して以下のように実行する。 ALTER DATABASE 現在のDB名 RENAME TO 新しいDB名; 変更するには変更対象のデータベースに接続しているセッションが存在しない状態で実行する必要がある。 すべてのセッションの接続を切断した上で実行する。
DATABASE
2025-06-01 2025-06-01
eye catch
【PostgreSQL】テーブルとデータベースのoidを取得する方法
oid2nameコマンドでoidを取得する PostgreSQLのoid2nameコマンドを使用してテーブルやデータベースのoidを取得できる。 DBの一覧 DBを指定せずにoid2nameを実行すると、全てのデータベースの一覧が表示される。
DATABASE
2025-06-01 2025-06-01
eye catch
コマンドでパスワードを生成する
/dev/urandom を使ったパスワード生成 /dev/urandomを使用してランダムなバイト列を生成し、ascii文字列のみを抽出してパスワードを生成する。 $ cat /dev/urandom | tr -dc 'a-zA-Z0-9!@#$%^&*()_+-=[]{}<>?' | fold -w 20 | head -n 1 'a-zA-Z0-9!@#$%^&*()_+-=[]{}<>?'の部分に使用したい文字セットを指定する。 生成されるパスワードの長さはfold -wの引数に指定する。上記の場合は20文字のパスワードが生成される。
LINUX
2025-05-31 2025-05-31
eye catch
シェルスクリプトで使えるファイルサイズのみを取得するコマンド
ls -lでのファイルサイズの取得 ls -lコマンドでファイルサイズを取得できる。 しかしファイル名やその他の情報も表示されるため処理が必要となる。 $ ls -l ファイル名 -rw-r--r-- 1 user group 123456 May 28 23:04 ファイル名 wc -cでのファイルサイズの取得 wc -cコマンドに標準入力でファイルを流すと、ファイルのバイト数のみを取得できる。
LINUX
2025-05-28 2025-05-28
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
【Homebrew】brew installでの自動更新を無効化する
HOMEBREW_NO_AUTO_UPDATE=1 brew installの実行時に、インストールしようとしているパッケージ以外のパッケージも自動的に更新される。 これを無効にするには、環境変数HOMEBREW_NO_AUTO_UPDATE=1を設定する。
MAC
2025-05-27 2025-05-27
  • ««
  • «
  • 59
  • 60
  • 61
  • 62
  • 63
  • »
  • »»
AUTHOR
author image
suer
ふつうのプログラマ
LATESTS
eye catch
【swift package】依存パッケージを依存ツリーで表示する (show-dependencies)
MAC
2026-10-12 2026-10-12
eye catch
【GitHub Actions,Xcode】DerivedDataとSwiftPMをキャッシュしてCIのビルドを速くする (irgaly/xcode-cache)
MAC
2026-10-11 2026-10-11
eye catch
【swift package】Package.swiftの依存関係の解決だけを先に実行する (resolve)
MAC
2026-10-11 2026-10-11
eye catch
【xcodebuild】SwiftPMの依存関係の解決だけを先に実行する (-resolvePackageDependencies)
MAC
2026-10-11 2026-10-11
eye catch
【xcodebuild】テストの実行先を指定する (-destination)
MAC
2026-10-11 2026-10-11
  • ホーム
  • お問い合わせ
  • プライバシーポリシー

© 2022 suer