“git add”を省略して”git commit”を行うには、オプション”-a”をつけます。
git addを省略してcommitする
git commt -m "ignore git add" -a
“git add .”を入力するか、オプション”-a”をつけるかの違いとなります。
※オプション”-m”はcommtメッセージ
“git add”を省略して”git commit”を行うには、オプション”-a”をつけます。
git commt -m "ignore git add" -a
“git add .”を入力するか、オプション”-a”をつけるかの違いとなります。
※オプション”-m”はcommtメッセージ
内容 | コマンド |
Dockerサービス起動 | sudo service docker start |
Dockerサービス停止 | sudo service docker stop |
コンテナ表示 | dockr ps -a |
コンテナ削除 | docker rm {CONTAINER ID} |
コンテナ全削除 | docker rm $(docker ps -aq) |
コンテナ起動 (フォアグラウンド) | docker run -it –rm ubuntu:18.0.4 /bin/bash |
コンテナ起動 (バックグラウンド/デタッチド) | docker run -d -p 80:80 nginx:latest nginx -g ‘daemon off;’ または docker run -d -it –name ubuntu-os ubuntu |
バックグラウンドで起動中の コンテナに接続 | docker exec -it {CONTAINER ID} /bin/bash または docker attach {CONTAINER ID} /bin/bash |
コンテナ停止 | docker stop {CONTAINER ID} |
コンテナ全停止 | docker stop $(docker ps -q) |
コンテナイメージ表示 | docker images |
コンテナイメージ削除 | docker rmi {IMAGE ID} |
コンテナイメージ全削除 | docker rmi $(docker images -q) |
コンテナイメージ取得 | docker pull ubuntu docker pull ubuntu:18.0.4 |
Dockerfileからコンテナイメージの ビルド | docker build -t tagname . |
sudo service docker start
※上記は、AmazonLinux2の場合
sudo service docker stop
※上記は、AmazonLinux2の場合
dockr ps -a
※オプション”-a”または”–all”でコンテナを全てを表示(オプションなしだと起動中のコンテナのみ表示)
docker rm {CONTAINER ID}
コンテナ表示時に表示されたコンテナIDを指定する
docker rm $(docker ps -aq)
※オプション”-aq”でコンテナ全てのコンテナIDを表示
docker run -it --rm ubuntu /bin/bash
※オプション”–rm”はコンテナの終了時に、自動的にコンテナをクリーンアップする
docker run -d -p 80:80 nginx:latest nginx -g 'daemon off;'
または
docker run -d -it --name ubuntu-os ubuntu
※オプション”-d”でデタッチド(バックグラウンド実行)、”-p”でホスト:コンテナのポート指定。オプション”–name”でコンテナの名前を指定する。
docker exec -it {CONTAINER ID} /bin/bash
または
docker attach {CONTAINER ID} /bin/bash
※”exec”コマンドを利用した場合、コンテナからログアウトしてもコンテナは停止しない
”attach”コマンドを利用した場合、コンテナからログアウトするとコンテナは停止する
docker stop {CONTAINER ID}
※コンテナIDはdocker psで確認
docker stop $(docker ps -q)
※オプション”-q”で起動中のコンテナIDを表示
docker images
ここで表示されるイメージIDを利用する
docker rmi {IMAGE ID}
docker rmi $(docker images -q)
※オプション”-q”でイメージIDのみを表示する
docker pull ubuntu
docker pull ubuntu:18.0.4
※上記は、”ubuntu”のコンテナイメージを取得。tag指定なしだと、デフォルトタグの”tag: latest”が指定される。
docker build -t tagname .
※”.”(ドット)は、カレントディレクトリにあるDockerfileを指定している
git rm コマンドを利用して、ステージング領域(インデックス)のファイルを削除します。作業コピーのファイルを残したい場合、オプション”–cached”をつけて、実行します。
git rm --cached file_name
上記コマンドでは、git add でステージング領域(インデックス)にエントリしたファイルを削除します。
作業ツリー(ローカルファイル)も併せて削除したい場合は、–cachedオプションなしで実行します。
下記、gitコマンドとファイルの流れの中で、「作業ツリー」→「ステージング領域」の操作を取り消しできます。
リモートリポジトリ
↑ push
ローカルリポジトリ
↑ commit
ステージング領域(インデックス)
↑ add ・・・ここを取り消す
作業ツリー(ローカルファイル)
正規表現の基本的な書き方一覧。よく忘れるのでメモとして記載します。
正規表現の書き方 | マッチする文字 |
abc | abc |
abc|aec | abc, aec |
a(b|e)c | abc, aec |
a[be]c | abc, aec |
a[abcde]c | aac, abc, acc, adc, aec |
a[a-e]c | aac, abc, acc, adc, aec |
a[a-cX-Z]c | aac, abc, acc, aXc, aYc, aZc |
abcd?e | abce, abcde |
abcd+e | abcde, abcdde, abcddde, … |
abcd*e | abce, abcde, abcdde, abcddde, … |
a{2} | aa |
a{2}b{4} | aabbbb |
a{2,} | aa, aaa, aaaa, aaaaa, … |
a{2,4} | aa, aaa, aaaa |
[0-9] | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9(数値のみ) |
[1-36-9] | 1, 2, 3, 6, 7, 8, 9 |
\d | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9(数値のみ) |
\D | 数値以外 |
[^0-9] | 数値以外([](カッコ)内先頭の^(キャレット)は否定) |
[^\D] | 数値のみ(数値以外の否定は数値のみ) |
0[89]0-\d{4}-\d{4} | 携帯番号(080-xxxx-xxxx, 090-xxxx-xxxx) |
^abc | 行の先頭のabc |
abc$ | 行の末尾のabc |
^abc$ | abcだけの行(行の先頭も行の末尾もabc) |
上記の内容をざっくり解説します。
“|”(パイプ)で挟むと または(OR) 指定できる。abc, aec にマッチする。
“()”(かっこ)内の文字を”|”で挟むと または(OR) 指定できる。abc, aec にマッチする。
“[]”(角かっこ)内の文字を または(OR) 指定できる。角カッコの場合、パイプを挟む必要はない。abc, aec にマッチする。
ひとつ上の正規表現の文字数を増やした正規表現。 aac, abc, acc, adc, aec にマッチする。
“[]”内でハイフンで文字や数値を指定すると範囲指定できる。上記は、”a” から “e” までの小文字の文字列を指定している。aac, abc, acc, adc, aec にマッチする。
上記正規表現の範囲指定を2つ指定している正規表現。”a” から “c” の小文字、 “X” から “Z” の大文字を指定している。 aac, abc, acc, aXc, aYc, aZc にマッチする。
対象文字の後に、”?”(クエスチョンマーク)を指定すると、 1文字あるまたはなくても、つまり 0回 または 1回 文字があれば、マッチする。上記の場合、dがあってもなくてもマッチするため、 abce, abcde にマッチする。
対象文字の後に、”+”(プラス)を指定すると、対象文字が1文字以上連続してあれば、つまり 1回以上 文字があればマッチする。上記の場合、dが1文字以上あればマッチするため、 abcde, abcdde, abcddde, … にマッチする。
対象文字のあとに、”*”(アスタリスク)を指定すると、対象文字が1文字以上連続してあるまたはなくても、つまり 0回 または 1回以上 文字があればマッチする。上記の場合、abce, abcde, abcdde, abcddde, … にマッチする。
対象文字のあとに、”{n}”(波カッコ、nは数字)を指定すると、対象文字が連続してn回ある場合、マッチする。上記の場合、aa にマッチする。
上記の複数指定した正規表現。上記の場合、”a” を 2回、”b” を 4回 なので、aabbbb にマッチする。
対象文字のあとに、”{n,}”を指定すると、対象文字が連続して n回以上 ある場合、マッチする。上記の場合、aa, aaa, aaaa, aaaaa, … にマッチする。
対象文字のあとに、”{n, m}”を指定すると、対象文字が連続して n回以上 かつ m回以下 ある場合、マッチする。上記の場合、aa, aaa, aaaa にマッチする。
“[]”(角カッコ)の範囲していで、数値を指定した正規表現。”0” から “9” までの数値を指定する。上記の場合、0, 1, 2, 3, 4, 5, 6, 7, 8, 9(数値のみ)にマッチする。
上記の範囲指定を複数した正規表現。”1″ から “3” または “6” から “9” の数値にマッチする。上記の場合、1, 2, 3, 6, 7, 8, 9 にマッチする。
数値の場合のみにマッチする。”[0-9]” と同様。上記の場合、0, 1, 2, 3, 4, 5, 6, 7, 8, 9(数値のみ)にマッチする。
数値以外の文字、記号にマッチする。”[^0-9]” や “[^\d]”といった数値の否定と同様。
“[]”(角カッコ)内の先頭に記載した “^”(キャレット)は否定の正規表現。”[0-9]”で数値を指定し、それを否定する。[^\D]も同様。上記の場合、数値以外にマッチする。
携帯番号(080-xxxx-xxxx, 090-xxxx-xxxx)を指定した正規表現。”080″ または “090” で始まり、”-“(ハイフン)で区切られた数値4桁がある場合、マッチする。
“^”(キャレットやチルドやハットと呼ぶ)が行の先頭を指定する。上記の場合、行の先頭にある “abc” にマッチする。
“$”(ドル)が行の末尾を指定する。上記の場合、行の末尾にある “abc” にマッチする。
行の先頭と末尾にある “abc” つまり 行に “abc” のみの文字列にマッチする。
自分が新しくWindowsをインストールしたら最初にやることの一つです。
CtrlキーとCapsLockキーを入れ替えます。MicroSoft純正で安心感もあります。
公式URLはこちら。
管理者権限でコマンドプロンプトを起動して、以下のコマンドを実行します。
ctrl2cap /install
実行完了したらWindowsを再起動すれば完了です。
WordPressの固定ページに指定したカテゴリーidの投稿リストを表示するショートコードです。
functions.phpへ以下のコードを追加して、ショートコードを定義します。
// 投稿を取得する // num_p:表示数 // id:カテゴリーID // [p_list id=2 num_p=3] function get_post_list($atts) { $a = shortcode_atts(array( 'num_p' => 20, 'id' => 1 ), $atts); $args = array( 'numberposts' => $a['num_p'], 'category' => $a['id'] ); $my_posts = get_posts($args); if (!empty($my_posts)) { $output = '<ul>'; foreach ($my_posts as $p) { $output .= '<li><a href="' . get_permalink($p->ID) . '">' . $p->post_title . '</a></li>'; } $output .= '<ul>'; } return $output ?? '<strong>条件に一致する投稿がありません</strong>'; } // ショートコード add_shortcode('p_list', 'get_post_list');
[p_list id=8]
HTML編集で記載します。[get_p_list]でショートコードを指定し、引数として[id]の”8″を渡しています。カテゴリーIDが8の投稿リストを表示します。
[p_list id=8 num_p=3]
上記は、カテゴリーidの”8″の投稿取得して、投稿3つを表示します。
よく使うpipコマンドをメモとして掲載します。
パッケージ インストール | pip install [パッケージ名] |
パッケージ インストール(バージョン指定) | pip install [パッケージ名]==[バージョンNo] |
パッケージ アップグレード | pip install -U [パッケージ名] |
パッケージ アンインストール | pip uninstall [パッケージ名] |
パッケージの詳細表示 | pip show [パッケージ名] |
pipインストールパッケージ 一覧 | pip list |
pipインストールパッケージをリストに保存 | pip freeze > requirements.txt |
パッケージリストからpipで一括インストール | pip install -r requirements.txt |
pip本体のアップグレード | pip install -U pip |
# パッケージ インストール pip install [パッケージ名] # パッケージ インストール(バージョン指定) pip install [パッケージ名]==[バージョンNo] # パッケージ アップグレード pip install -U [パッケージ名] # パッケージ アンインストール pip uninstall [パッケージ名] # パッケージの詳細表示 pip show [パッケージ名] # pipインストールパッケージ 一覧 pip list # pipインストールパッケージをリストに保存 pip freeze > requirements.txt # パッケージリストからpipで一括インストール pip install -r requirements.txt # pip本体のアップグレード pip install -U pip
各コマンドについて、ざっくり解説します。
パッケージのインストールは、下記のコマンドのみでOKです。何もオプションを指定しないと、最新版(latest)がインストールされます。
# パッケージのインストール pip install [パッケージ名] 例) pip install pandas
Pythonのバージョンや他のパッケージとの依存関係で特定のバージョンを指定する場合は、下記のコマンドでバージョンを指定します。
# パッケージのインストール(バージョン指定) pip install [パッケージ名]==[バージョンNo] 例)pip install pandas==0.22.0
パッケージを最新バージョンへ更新することをアップグレードといいます。オプションの「-U」または「–upgrade」を指定します。
# パッケージのアップグレード(アップデート) pip install -U [パッケージ名] # または pip install --upgrade [パッケージ名] 例)pip install -U pandas
パッケージのアンインストールは半角スペースをいれることで複数同時に実行できます。また、オプションなしだと、削除実施時に、パッケージを本当に削除するかの確認(yの入力を求められる)があります。この削除確認は、「-y」または「–yes」オプションを追加で指定することで省略可能です。
# パッケージのアンインストール pip uninstall [パッケージ名] pip uninstall [パッケージ名] [パッケージ名] [パッケージ名] pip uninstall -y [パッケージ名] [パッケージ名] [パッケージ名] 例)pip uninstall requests pandaas
パッケージの詳細情報を表示します。名前、バージョン、作者、ライセンス、依存パッケージなどが表示されます。
# パッケージの詳細表示 pip show [パッケージ名] 例)pip show pandas
pipを利用してインストールしたパッケージの名前、バージョンを表示します。オプション「-o」(「–outdated」でもOK)をつけると、最新でないパッケージのバージョンと最新バージョンの一覧を表示します。
# pipインストールパッケージ一覧 pip list # 最新でないパッケージのバージョンと最新バージョン一覧 pip list -o または pip list --outdated
pipを利用しているパッケージ一覧を保存します。このファイル(今回はテキストファイル)を利用して、環境のバックアップをとったり、他のマシンへ同じ環境を構築します。
「pip freeze」でパッケージとバージョンを表示し、「>」で書き込みを指定し、「requirements.txt」というファイル名で保存します。
# pipインストールパッケージをリストに保存 pip freeze > requirements.txt
オプションの「-r」をつけることで、ファイルからパッケージを一括でインストールします。
# パッケージリストからpipで一括インストール pip install -r requirements.txt
pip自体のアップグレードです。ワーニングがでたら、最新版に更新しています。
# pip本体のアップグレード pip install -U pip # または python -m pip install --upgrade pip
テキストエディタでよく利用するテクニックの一つです。
logなど、長いテキストから任意の文字列を含む行を選択する正規表現と、それとは逆に、文字列を含まない行を選択する正規表現のサンプルになります。
正規表現は、VSCode、ATOM、SublimeTextからサクラエディタまで、よく利用されるエディタでは、基本的にサポートしている機能です。
今回はエディタに、VSCodeを利用します。
内容 | 正規表現 |
文字列を含む行を検索 | .*文字列.* |
文字列を含む行を削除(置換)(LF) | .*文字列.*\n |
文字列を含まない行を検索 | ^(?!.*文字列).* |
文字列を含まない行を削除(置換)(LF) | ^(?!.*文字列).*\n |
※サクラエディタなどでShift-JISのファイルを扱っている場合は、上記“\n”(LF)を“\r\n”(CRLF)に置き換えます
その他の正規表現の基本的な書き方はこちらをご覧ください。
以下、各正規表現の使用例です。
.*文字列.*
VScodeでは「Ctrl」+「F」で検索のウインドウが表示されます。
また、正規表現を利用するには正規表現を有効にする必要があります。VSCodeの場合、検索ウインドウが表示されている状態で「Alt」+「R」を押すか、検索ウインドウの右側にある「Use Ragular Expression」ボタンを押します。
画像は、VSCodeで”「あい」を含む行”を検索しています。
.*文字列.*\n
一部の条件に当てはまる行を削除したい時に利用します。私の場合、logから共通フレームワークなどの特定のアプリケーションのログのみ削除したい場合などに利用しています。
VScodeでは「Ctrl」+「H」で置換(Replace)のウインドウが表示されます。
画像は、VSCodeで「あい」を含む行を削除(ブランク(空白)に置換)しています。
※改行コードは「\n」で指定します。
.*文字列.*\r\n
さくらエディタでは、デフォルトで改行コードがCRLFとなっており、「\r\n」となります。
では、続いて逆の文字列を含まない行の選択を行います。
^(?!.*文字列).*
VScodeでは「Ctrl」+「F」で検索のウインドウが表示されます。
画像は、VSCodeで「あい」を含まない行を検索しています。
^(?!.*文字列).*\n
一部の条件に当てはまらない行を削除したい時に利用します。私の場合、logから特定のアプリケーションのログのみ残したい場合などに利用しています。
VScodeでは「Ctrl」+「H」で置換(Replace)のウインドウが表示されます。
画像は、VSCodeで「あい」を含まない行を削除(ブランク(空白)に置換)しています。
※改行コードは「\n」で指定します。
^(?!.*文字列).*\r\n
さくらエディタでは、デフォルトで改行コードがCRLFとなっており、「\r\n」となります。
正規表現で文字列を含む行を検索する場合、「.*文字列.*」を指定しました。
「.」(ドット)は、1文字で何が入ってもOK(ヒットする)という意味です。
「*」(アスタリスク)は、直前の要素の繰り返し(0回含む)という意味です。
「.*」は、1つの文字が0回以上あれば、ということになります。
したがって、「.*文字列.*」を指定した場合、「文字列」の前後に何か入力がある行が対象となります。
文字列を含まない行を検索する場合、「^(?!.*文字列).*」を指定しました。
「^」(キャレット または チルダ)は、行の先頭を意味します。
「(?!XXX)」は、カッコ()内のXXXが含まれていないという意味です。
したがって、「^(?!.*文字列).*」を指定した場合、先頭からみて「文字列」が含まれていない場合、行が対象となります。
Windows10でコマンドプロンプトを開く方法を複数の方法でご紹介します。
一番私がよくやるコマンドプロンプトの表示方法です。
「Windows」ボタン+「R」を同時におして「ファイル名を指定して実行」を開きます。
開いたら「cmd」を入力し、「OK」ボタンまたはエンターキーを押します。
Windowsのスタートメニューを表示するには画面左したのメニューのウインドウマークをクリックするか、「ウインドウ」ボタンをおします。
スタートメニューが表示されたら、コマンドプロンプトを入力します。
コマンドプロンプトが表示されたら選択します。
コマンドプロンプトを開きたいフォルダを開いた状態で、「Alt」ボタン+「D」を押してツールバーへフォーカスします。
ツールバーがアクティブな状態で、「cmd」を入力します。
この方法でコマンドプロンプトを開いた場合、開いたフォルダに移動している状態でコマンドプロンプトが開かれます。
※上記の場合、「C:\workspace」となる