タグ

shellに関するd_animal141のブックマーク (79)

  • alacritty+tmuxもいいけど、weztermがすごい件

    私はターミナルが大好きなので毎日使っているんですが、永らく alacritty + tmux を愛用してました。(といってもさっき見たら alacritty 使ってたのは 1 年ちょっとだったらしい・・・) しかし最近 wezterm というターミナルの話を Reddit とかでちょくちょく聞くようになってたので 2022個人開発環境大変革[1]に合わせて試してみることにしました。 wezterm とは? wez さんが作った Rust 製の GPU-accelerated で cross-platform なターミナルです。自分の名前をプロダクトに入れるところに正直自信の表れを感じます w wez さんは 2022 年現在 Facebook(meta)で働いているようです。 まぁけど、Rust 製の GPU-accelerated で cross-platform なターミナルってそ

    alacritty+tmuxもいいけど、weztermがすごい件
  • google/zx 使ってみる & TypeScriptで動くようにする

    ❯ zx --help internal/process/esm_loader.js:74 internalBinding('errors').triggerUncaughtException( ^ Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/Users/korosuke613/ghq/github.com/korosuke613/playground/zx/--help' imported from /Users/korosuke613/.asdf/installs/nodejs/14.16.1/.npm/lib/node_modules/zx/zx.mjs at finalizeResolution (internal/modules/esm/resolve.js:276:11) at moduleResolve (intern

    google/zx 使ってみる & TypeScriptで動くようにする
  • bash 配列まとめ - Qiita

    Help us understand the problem. What are the problem?

    bash 配列まとめ - Qiita
  • xargs のオプションいろいろ - Qiita

    xargs は便利なコマンドです。 xargs を使うことにより、複雑なプログラミングをしないでも、手軽に並列処理を実現できます。 準備 実験環境 今回実験に利用する環境は CentOS 6.4 です。 xargs は Linux 系と BSD 系でオプションが異なりますので、ご注意下さい。 実験用スクリプト 今回の実験に利用するスクリプトです。このスクリプトを xargs の引数に渡します。 以降、このスクリプトの様に xargs に渡すコマンドを、 xargs 引数コマンド と呼ぶことにします。 #!/bin/sh # 実行時間を擬態 sleep 1 # コマンド引数表示時の最大文字数 max_len=50 # 最大文字数を超えた場合のトリミング a=$@ if [ $max_len -lt ${#a} ] then a="${a:0:$max_len}..." fi # プロセス番号

    xargs のオプションいろいろ - Qiita
  • 【Linux】xargs コマンドの使い方がよく分からない - きゃまなかのブログ

    概要 xargs とは よく見る利用法 高速に並列処理できる exec オプションを使った場合 xargs コマンドを使った場合 Argument list too long の制限を受けない ドライランオプション 引数の場所を指定する 便利なワンライナー 最後に 概要 結構複雑な処理をサーバーサイドでやりたいと思って検索すると、xargs コマンド使ったワンライナーを良く見かけます。 ただし、xargs コマンドが何者なのか理解することなく、今まで検索したワンライナーをコピペして使ってきました。 折角なので xargs コマンドの使い方をまとめました。 xargs とは 前のコマンド (command1) の実行結果を標準入力 (stdin) から受け取って、次のコマンドの引き数に渡す (stdout) 仲介役をしてくれるコマンドです。 参考: www.atmarkit.co.jp よく

    【Linux】xargs コマンドの使い方がよく分からない - きゃまなかのブログ
  • OS 問わず Bash で一括リネームする - Neo's World

    OS 問わず Bash で一括リネームする Bash でファイル名を一括でリネームしようと思い、調べ始めたらなかなか混乱していたので、整理する。 目次 Windows Git SDK、Ubuntu LinuxMacOS で同じコマンドを使いたい rename コマンドは OS 間で全く違うので使わない find と sed と xargs mv でリネームする find で処理対象を絞り込む sed でリネーム後の文字列を作る xargs mv で実際に置換する 以上 Windows Git SDK、Ubuntu LinuxMacOS で同じコマンドを使いたい ファイルの一括リネームを実現するにあたって、OS の差異があるのは陶しいので、どの環境でも同じコマンドでリネームできる方法を探すことにする。 Windows 環境では、自分は Git For Windows (GitBash)

  • npm run とかで使うハイフン2つ「--」の意味 - Neo's World

    npm run とかで使うハイフン2つ「--」の意味 npm-run-scripts を使っていると、npm run something コマンドにオプション引数を渡したくて、$ npm run something -- --include=hoge みたいに書いたりする。 他にも、ハイフンから始まるファイルを指定するときに、$ rm -- -some.txt などと書いたりする。 このハイフン2つ -- って何? というのを調べてみた。 どうやらコレは Double Dash ダブル・ダッシュと呼ばれており、UNIX におけるコマンドフラグの終わりを示す記号とのこと。オプションのスキャンを強制的に終了させる記号のようだ。 参考:引数"--"(Double dash)のみとは何を意味するのか 参考:Man page of GETOPT "--" は特殊な引き数で、スキャンのモードによらず、

  • シェルスクリプトを書くときにいつもやるやつを調べた

    bash のシェルスクリプトを書くときに、いつも脳死で以下をやっている。(同僚が整備してくれたものをコピペしている) エディタなり CI で shellcheck をまわす set -euxo pipefail と冒頭に書く こんな感じ #!/bin/bash set -euxo pipefail いつまでもコピペではさすがにアレなので、意味を調べたメモ。 shellcheck koalaman/shellcheck: ShellCheck, a static analysis tool for shell scripts イケてない書き方に警告を出してくれる それぞれの警告にはエラーコード割り振られていてとても便利 エラーコードごとに正誤例、解説が書かれているのでわかりやすい SC1000 の例 CI もそうだし、エディタのプラグインも充実 しているのでとりあえず入れておくと良い set

    シェルスクリプトを書くときにいつもやるやつを調べた
  • Macの開発環境をzshで良い感じにする - Qiita

    このエントリーでは、Macの開発環境をzshで良い感じにする記事です 今年からシステムエンジニアからWebエンジニアへキャリアチェンジし、今まで使ってきた開発環境がガッツリ変わりました。 今回は、同僚や記事を参考にして自分なりに設定した開発環境の設定をご紹介します この記事はまだ荒削りな内容のため近いうちに内容を修正追加する予定です🙇 macOS Sierra 10.12.6 コマンドラインツールのインストール(アップデート) まずは、AppストアからXcodeをインストールをしてください インストール後、下記のコマンドを実行しコマンドラインツールのインストールをしましょう

    Macの開発環境をzshで良い感じにする - Qiita
  • [Mac]Dropbox を複数アカウントで使用する方法|Macアプリケーション|WEBデザインの小ネタとTIPSのまとめサイト「ウェブアンテナ」

    Dropbox アプリケーションは原則1アカウントしか利用(同期)することができませんが、 Mac の場合はAutomator でDropbox を起動することにより、2つ以上の複数アカウントを同期させることが可能です。 新しいDropbox フォルダの用意 Mac の/Users/ユーザー名/フォルダに、新しいDropbox のフォルダを作成します。 すでにDropbox アプリケーションを使っている場合は、Dropbox2、Dropbox-Bなど別の名称であれば何でも構いません。※今回は「Dropbox-s」にしています。 Automator の起動 アプリケーションフォルダ内のAutomator を起動します。 Automator の「アプリケーション」を選択します。 左メニュー(ライブラリ)の「ユーティリティ」から「シェルスクリプトの実行」を選択します。 「シェルスクリプトの実行」

    [Mac]Dropbox を複数アカウントで使用する方法|Macアプリケーション|WEBデザインの小ネタとTIPSのまとめサイト「ウェブアンテナ」
  • npm run とかで使うハイフン2つ「--」の意味 - Corredor

    npm-run-scripts を使っていると、npm run something コマンドにオプション引数を渡したくて、$ npm run something -- --include=hoge みたいに書いたりする。 他にも、ハイフンから始まるファイルを指定するときに、$ rm -- -some.txt などと書いたりする。 このハイフン2つ -- って何?というのを調べてみた。 どうやらコレはDouble Dash ダブル・ダッシュと呼ばれており、UNIX におけるコマンドフラグの終わりを示す記号とのこと。オプションのスキャンを強制的に終了させる記号のようだ。 参考:引数"--"(Double dash)のみとは何を意味するのか 参考:Man page of GETOPT "--" は特殊な引き数で、スキャンのモードによらず、 オプションのスキャンを強制的に終了させる。 参考:Lin

    npm run とかで使うハイフン2つ「--」の意味 - Corredor
  • Studio ODIN - blog風小ネタ集 > bash の プロセス置換

    script コマンドを使った小技です。 (使っている Linux は Ubuntu 14.04.3 LTS です) bash には 「プロセス置換」という機能があります。 Process Substitution Process substitution is supported on systems that support named pipes (FIFOs) or the /dev/fd method of naming open files. It takes the form of <(list) or >(list). The process list is run with its input or output con‐ nected to a FIFO or some file in /dev/fd. The name of this file is passed a

  • bashのプロセス置換で遊んでみよう! | Raccoon Tech Blog [株式会社ラクーンホールディングス 技術戦略部ブログ]

    株式会社ラクーンホールディングスのエンジニア/デザイナーから技術情報をはじめ、世の中のためになることや社内のことなどを発信してます。 bashインフラLinuxプロセス置換ファイルディスクリプタシェルスクリプト こんにちは、羽山です。 今回は意外と知らないかもしれないbashの「プロセス置換」という機能を紹介します。 UNIXでは「1つのプログラムは1つの機能にとどめ、フィルタとして動作できるようにせよ」という設計思想があります。 その言葉の通り、大抵のコマンドはパイプでつないでフィルタのように動作可能ですが、必ずしも理想的に設計されていない、もしくは仕様上できないコマンドもあります。 例えば、よく使う diff コマンドがこれにあたります。 指定するファイル名を - とすれば片方は標準入力から読み込めますが、もう片方はどうしても引数で指定しなければいけません。 コマンドの実行結果を直接比

    bashのプロセス置換で遊んでみよう! | Raccoon Tech Blog [株式会社ラクーンホールディングス 技術戦略部ブログ]
  • 漢のzsh(12) 一時ファイルはもういらない - プロセス置換

    コマンドで指定するファイルをファイルではなくコマンドとして直接指定することで、一時ファイルを作成する必要がなくなる。どれだけ使うシーンがあるかと問われると頭を捻ってしまうが、ログ解析や差分チェックなどを使っている人からは「けっこう便利に使っている」という話も聞く。 さあ、今回はこのマニアックな機能を堪能していこう。ちなみに今回の内容はその多くをzshマニュアルの「Process Substitution」の項を参考にしている。コマンド例もこれを参考にしたものだ。より詳しく知りたい読者の方は、そちらも合わせてご覧いただきたい。 例えばこういった場合 CSVファイルを編集する例を考えてみよう。表2.1のようなテーブルデータを用意したとしよう。テキスト状態ではプロンプト2.1のようになっている。 表2.1 CSVファイルの例 氏名 年齢 性別 備考

    漢のzsh(12) 一時ファイルはもういらない - プロセス置換
  • Linuxにおけるハイフンの意味

    ときどき、下記のような表現を見ます。 $ wget -O- http://www.example.com/example.gpg.key | \ sudo apt-key add - この -Oのあとについているハイフンや、apt-key addのあとについているハイフンの意味をきちんと理解していませんでした。 改めて、調べたら、いろいろな方が解説してくれていました。 結論からいうと、 Linuxにおけるハイフンは、標準入出力をさす のですね。 上記の例の場合、wget -O は当はファイル名を引数にもつはずで、 wget -O file となるはずなんです。 でも、今の場合、-を指定することで、 wget -O- はその内容を、標準出力に表示するんですね。 今の場合は、example.gpg.keyが表示されるわけです。 で、上記の場合、さらにパイプがつながっていて、apt-key a

    Linuxにおけるハイフンの意味
  • Bash Tutorial => Process substitution

  • bashのプロセス置換(Process Substitution)で中間ファイルを不要に - grep Tips *

    はじめに bashのプロセス置換は、引数でファイルを指定すべきところをコマンドの結果で代用できる機能。コマンドの結果をファイルとして扱え、作業用の中間ファイルを作る必要がなくなる。 記述方法 内容 <(コマンドリスト) プロセス置換の利用例としてよく挙げられるものに、ファイルの比較を行うdiffの引数にファイルの代わりにコマンドを渡すがある。 diff <(command_list) <(command_list) filenameで始まる名前のファイルが大量にあるとして、原則、ファイルには特定の文字列「something」が入っているとする。somethingが入っていないファイルを探したい。 $ diff <(grep something filename* -l | xargs ls -t) <(ls -t filename*) 0a1,3 > filename9 > filenam

    bashのプロセス置換(Process Substitution)で中間ファイルを不要に - grep Tips *
  • kubectlのbash completionをMacで導入する | DevelopersIO

    こんにちは。サービスグループの武田です。 最近社内の有志でKubernetesもくもく会が開催されています。私も結局手を出せないまま時間が過ぎてしまっていたので、強制的に触る環境を作るためにも参加しました。今回はKubernetesのCLIツールとしてkubectlを使用する際に、bash補完機能の有効化でつまずいたので紹介します。 環境 次の環境で検証しています。DockerおよびKubernetesは、Docker for Macでインストール・有効化しています。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.14 BuildVersion: 18A391 $ echo $BASH_VERSION 3.2.57(1)-release $ docker --version Docker version 18.06.0-ce, bui

    kubectlのbash completionをMacで導入する | DevelopersIO
  • 1コマンドでMacBook Proに最低限の開発環境構築 | iret.media

    使っていた端末の調子が悪くなって端末交換したので、開発環境構築のお時間です。 できるだけ簡単に旧端末の設定を引き継ぎつつセットアップしたかったので、いろいろと調べてまとめてみたら、1コマンドでできるようになりました。(準備は含めず) 旧端末を環境構築したときとだいぶ変わりました。 5分でできるMacBook Proに最低限の開発環境構築 – Qiita https://cloudpack.media/42029 手順 ターミナルを立ち上げて、 > sh -c "$(curl -fsSL https://gist.githubusercontent.com/<GitHub UserID>/<Gist ID>/raw)" おーかんたん。これで必要なアプリがだいたいインストールされます。 ※コマンド実行中、パスワードを求められることがあります。 何をしているのか? セットアップに必要なコマンドを

    1コマンドでMacBook Proに最低限の開発環境構築 | iret.media
  • いい加減覚えよう。 `command > /dev/null 2>&1`の意味 - Qiita

    質問 command > dev/null 2>&1ってよく書いてませんか? crontabでよく書いてませんか? でもそれ、前のcrontabコピペして書いてませんか? 実は意味を理解せずに書いてませんか? ゴール ファイルディスクリプタを理解する command > /dev/null 2>&1の意味をきちんと理解する 基礎知識 1. ファイルディスクリプタ Unixには、次の3つの入出力があり、それぞれ番号が振られています。 0: 標準入力 1: 標準出力 2: 標準エラー出力 ファイルディスクリプタとは、これら入出力をOSが判別する為に割り当てられた番号の事です。 2. リダイレクト よく>という記号を見ると思いますが、これがリダイレクトです。 例えば、標準出力に出すだけのシェルスクリプトを作ってみます。

    いい加減覚えよう。 `command > /dev/null 2>&1`の意味 - Qiita