検索条件
お知らせ
現在サイトのリニューアル作業中のため、全体的にページの表示が乱れています。
cwd=$(cd $(dirname $0); pwd)
$0
はシェルスクリプトのフルパス
dirname
でスラッシュから始まるファイル名を除去
cd
で移動
pwd
で表示
これはサブシェルを使うと出来る
サブシェルとは()
で囲まれた部分で、この中では別のシェルが動いている
例えば次のスクリプトはfoo/
に移動し中のファイルリストを表示するが、2行目では現在の位置にあるファイルリストを表示するため移動していない
コマンド展開記法$()
もサブシェルが動いている
- 以下のように書くと連続で線形実行される。手前が異常終了しても続く
コマンドの末尾に&
をつけるとバックグラウンドで実行される
- 以下の例では左がバックグラウンド、右がフォアグラウンドで実行される
AndAlso的な動きをする
- 以下のように書くと連続で線形実行される。手前が異常終了すると続かない
コマンドの末尾に|
をつけると標準出力が次にリダイレクトされる
- 以下のように書くと連続で線形実行される。手前の標準出力が次にリダイレクトされる
echo 1 | xargs -I{} echo {}2
OrElse的な動きをする
- 以下のように書くと連続で線形実行される。手前が異常終了した場合のみ次が動く
Windowsで確認しているが、 Linuxでも多分同じ
Env |
Ver |
gpg (GnuPG) |
2.2.27 |
- 鍵の一覧を確認する
gpg --list-keys
--with-keygrip
をつけるとKeyGrip(鍵の識別子?)も見れる
- 鍵を編集する
gpg --edit-key <Name>
<Name>
は鍵の名前か鍵IDを指定できる
--expert
をつけると高度な編集が可能になる
- 対話シェルが起動するので
help
を叩いてやりたい操作をする
- 副鍵に対する操作は事前に
key <ID>
を指定する必要がある
- 鍵をインポートする
<DistributionName>
はwsl -l
で確認して設定する
<command>
はデフォルトシェル経由で叩かれる
wsl -d <DistributionName> -u root -- <command>
Env |
Ver |
zsh |
zsh 5.8 (x86_64-pc-msys) |
例として.zshrc
に書くものとする(別に分割しても構わない)
setopt PROMPT_SUBST
する
- この設定によりパラメータ展開、コマンド置換、および算術展開がプロンプトで実行される
- 展開したい関数をシングルクォートで囲み文字列結合する
- 注意点
- 変数に代入している場合評価されない
- 関数はシングルクォートで囲まないと評価されない
# baz は echo が入った関数
PROMPT "foobar"'$(baz)'
# 以下の 2 つは期待通り動作しない
PROMPT "foobar"$(baz)
PROMPT $(baz)
具体的にはref('SomeReference').once('value')
の結果を取得する
Env |
Ver |
Chrome |
91.0.4472.77 |
Firebase SDK |
8.6.2 |
top level awaitが使える
// apps[]から使いたいのを取る
const dbInstance = firebase.apps[0]
// DB参照を取る
const dbRef = firebase.database(dbInstance)
// 読み取る場合、書き込みは.set()とかする
(await dbRef.ref('/foo/bar').once('value')).val()