【備忘録】zshインストール&最強の補完機能を装備
zsh めちゃくちゃ優秀らしい*まだ何が優秀なのかはわかってないとにかく、早速インストールしてみます。環境MacBook Pro (13-inch, 2017) macOS Big Sur (Version11.1) Homebrewインストール済み:インストール方法 @zaburoさんの記事を拝借インストールターミナルに早速打ち込む...
View Articleシェルとシェルスクリプト
シェル変数内部変数と環境変数が存在している。内部変数は変数を定義したシェルのみ利用可能。環境変数は子プロセスにも利用可能。定義の仕方内部変数は 変数名=値(文字列)で定義。setコマンドで設定した変数の一覧を表示させることが出来る。環境変数は すでに存在している変数を環境変数にする場合export 変数名新しく環境変数を定義する場合export 変数名=値(文字列)...
View Articlebashで出力にダブルクォートをつける
TL; DR行ごとのやつ$ echo-e"aaa bbb\nccc ddd" | jq -R."aaa bbb""ccc ddd"列ごとのやつ$ echo-e'aaa bbb\nccc ddd' | sed's/[^ ]\+/"&"/g'"aaa""bbb""ccc""ddd"動機 bashで出力にダブルクォートを含める必要があるとき、エスケープを嫌ってシングルクォートを使いたくなる。$...
View ArticleGitBashでjqコマンドを使用するための一番簡単な方法
最近はWSL2があるのであまり出番がなくなってきたGitBashですが、備忘録として残しておきます。前提条件Windows 64bit OSを利用していることGitBashがインストール済であること手順を実行することで出来ることWindowsにインストールしたGitbash上でjqコマンドを使用できる。コマンド実行例:$ cat hoge.json | jq...
View ArticleTerminal(bash)の基本的なコマンド操作
この記事の内容ターミナル(今回はシェルとしてバッシュを使う)を操作する上で最も基本となる操作のコマンドをメモしておく。超絶初歩なので、知っている人からしたら何これってなります。。動作環境端末はMacを使用しています。OSはバーチャルボックス内の仮想デスクトップでLinuxを使用。シェルはbash。カーソル移動系^ + b : 一つ前に戻る^ + f : 一つ前に進む^ + a : 行の先頭へ移動^...
View Article【Git】initコマンドについて
initコマンドとはinitコマンドは新しいGitリポジトリを作成するために使用します。リポジトリは「ファイルやディレクトリの状態を管理する場所」のことを指します。一連のGitのコマンドはリポジトリが管理しているディレクトリ内で使用することができます。実際にinitコマンドを実行してみると現在のディレクトリに.gitディレクトリが作成されます。基本的には.gitディレクトリがリポジトリとなります。g...
View Articlellコマンドを使えるようにする[Mac]
便利なエイリアスである、llコマンドをMacOSで使えるようにしました。本記事での前提ターミナルはMac標準シェルはbash(以下ならOK) ターミナル $ echo $SHELL /bin/bash...
View ArticleShell Script自分用メモ
Shell Script コマンド まとめ基本変数宣言#=の左右は空白なし#name ="MK" //NG#name= "MK" //NG#name = "MK" //NGname="MK"echo"My name is $name"#コマンドの結果も変数に入れますresult=$(networksetup -getdnsservers...
View Articlebashのカスタマイズ
bashをカスタマイズしようバッシュは初期設定でも使いやすいシェルですが、自分好みの設定に変更できます。自分なりのカスタマイズをしてもっと使いやすくしましょう。エイリアスエイリアスの作成alias <任意の名前>='<コマンド>'エイリアスの削除unalias <エイリアス名>'エイリアスを一時的に無効\<エイリアス>setコマンドset -o/+o...
View Articlesshでリモート先に目的のファイルが存在するかの確認
sshで、リモート先に目的のファイル、あるいはディレクトリが存在するのか確認したい。sshでログインはしたくない。ローカル側のスクリプト内で実行したい。ファイルを確認したいファイルだったら 戻り値0ファイル以外だったら 戻り値1$ ssh user@host.local 'test -f ~/data/testfile;echo $?' 0 ディレクトリを確認したい場合$ ssh...
View Article127.0.1.1ってなに? あるいは、Ubuntu含むDebian系でホスト名をちゃんと変更するスクリプトのはなし
ホスト名を変更するbashスクリプトこの話、ラズパイからのスタートですが、Ubuntu含むDebian系でも通用する、かもしれません。ラズパイの初期設定、今までにも何百台かやってきましたが、一台あたり2つのファイルを編集して、すべてユニークなホスト名に変えていました。自分でやったり、子供たちにやってもらったり。今回、またラズパイをたくさん設定する機会があり、かんたんにホスト名を変更できるような工夫を...
View Article重複ファイルを探す そして 消す
無駄な重複ファイル、消したいですよね。学生時代大学とかで使っていた発表資料で同じものがいくつも出て来て困った…ので重複ファイルを消す方法を考えてみました。最善の方法ではないかもしれませんが、私はこの方法でやってみました。アルゴリズムとしてはファイルのCRCチェックサムを使って配列を作り、そのチェックサムと同じものがあったら削除対象にしましょうというもの。duplicatesearch.sh#!/bi...
View ArticleMinecraftサーバーにシェルスクリプトからコマンド入力 #bash #Minecraft #screen
Minecraftサーバーにシェルスクリプトからコマンド入力する方法マイクラのサーバーを管理することになったので, シェルスクリプトからコマンドを実行できるようにしました.screenで実行するこちらの記事を参考にしつつ, マイクラを screenで実行します.#!/bin/bash screen -UAmdS minecraft java -server-jar server.jar nogui...
View Article原理原則で理解するZshの例外処理
はじめにZ shell(以下Zsh)はシェルのプログラムの一種です。シェルは広義にはユーザーや他のプログラムに対してOSとのインターフェースを提供するプログラムを指しますが、一般的にはコマンドライン上で機能を提供するプログラムとして認知されていると思います。多くのエンジニアにとって馴染み深いシェルはBashだと思っていますが、macOS 10.15...
View Article絶対パスの取得には realpath を使おう
bash のスクリプトで絶対パスを取得するときはどうするんだっけ?などと思って、Google検索などをすると、cd して pwd...
View Articlekill コマンドの使い方まとめ
killコマンドはプロセスの停止や任意のシグナルを送るためのコマンドです。その他、プロセスの生存確認、シグナル一覧出力、シグナル名への変換機能もあります。多くのシェルではビルトインコマンドとして実装されています。(例外は おそらく posh のみ)この記事では原則として POSIX 準拠の範囲(オプションは -sと...
View ArticleAWSのコスト配分レポートをいじり倒し、料金を超絶見える化する
はじめにAWS料金、どこにどれだけかかってるか、とても分かりづらくないですか? CostExplorerを使えばそれなりに可視化できますが、例えばEC2。...
View Article[Bash]対象パターンの行数をカウントする
Bashで、対象パターンの行数をカウントするサンプルコード(覚え書き)。具体的には、ファイル内に、対象文字列が所定の箇所にある行数をカウントします。環境OS: Amazon Linux2概要指定したファイル内に、対象文字列が所定の箇所にある行数をカウントします。コマンドライン引数の第1引数: ファイル名第2引数: 検索したい文字列第3引数:...
View Articleインターネットラジオを録音する。
インターネットラジオを録音する初投稿です。。好きな歌手や、DJの方のインターネットラジオ(ラジコ、tunein等)を録音したい、その際のあれやこれやと四苦八苦した時のメモです。(この方法がベストかは分からず。。).m3u8 マニフェスト ファイルのURLを確認...
View Articleターミナルとかのプロンプト表示を変更する
ターミナルとかのプロンプトを短くしたい、そんな時のお話。Cloud9 : {ユーザ}を消す参考 : BashのPS1についての忘備録 - HRR Co., Ltd.# 1. 使っているシェルを確認する(違うシェルを使っている場合は次で変更するファイルが違うはず) ec2-user:~/environment $ echo$SHELL /bin/bash # 2. PS1の内容を変更する...
View Article