You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
はじめに bash の初期化ファイル ログインシェルとは インタラクティブ(対話的)シェルとは ログインシェルとインタラクティブシェルの分類 各種環境における初期化ファイル CentOSの初期化ファイル Ubuntuの初期化ファイル macOS(Catalina以前)の初期化ファイル macOS(Catalina)の初期化ファイル 各環境におけるデフォルトの初期化ファイル 単一ファイル管理(~/.bashrc) 標準的管理(環境変数は~/.bash_profile) 厳格管理(~/.profile 利用) macOS Catalina の場合 まとめ はじめに 本記事では bash の初期化ファイルと、それにまつわる運用方法について説明します。 シェル(bash)の初期化ファイルには .profile .bashrc, .bash_profile などがありますが、どこに何を定義すべきかに
Photo by Fotis Fotopoulos on Unsplash はじめにこんにちは、TIGの岸本卓也です。 シェルスクリプト連載 の7日目です。 シェルスクリプトで前提とするシェルは、大抵のコンピューターにインストールされていることが多いbashを選択することが多いと思います。当記事ではそのbashを対象に、意外と色々あるシェルの展開処理の概要をまとめました。シェルスクリプトに限らず普段のコマンド操作でも展開処理が便利なシーンは多々あると思いますので、皆さんの時間の節約に役立てば幸いです。 以降では、処理される順番に展開処理を紹介します。また、説明している動作と具体例はGNU bash version 5.1.4で確認しました。 なお、Windowsでは初期状態ではbashがありませんが、インストールする方法はいくつかあります。gitを使うためにインストールするGit for
インストール方法 bat ripgrep, ripgrep-all fd, fselect starship exa, lsd, nat nushell navi, tealdeer delta hyperfine xsv, csview py-spy bandwhich, gping, ht, dog hexyl, bingrep broot tokei genact, globe, glitchcat monolith shellharden fnm, volta pastel gitui, onefetch, git-interactive-rebase-tool skim watchexec dust, diskonaut, dua-cli, dutree zoxide ytop, bottom, zenith mcfly sd, desed topgrade pueue proc
July 7, 2020Have you ever thought how good it would be to have a help message for your shell script that you wrote a month ago and already forgot what it is supposed to do? Yeah, there is always a way to show a message using cat (meow) or a bunch of echo calls. But there is a neat trick. Add your message with all the required information on top of your file, just right after the shebang. #!/bin/ba
Dec 5, 2010 • nlfiedler For whatever reason, this is harder than it should have been. All I wanted to do was replace a particular expression with a newline character (0x10). My preference is typically to script such tasks, and the sed command is the perfect fit. This would be simple on just about any system, except for Mac OS X, where apparently all the standard advice is difficult to apply. Worse
Bash は言わずと知れた歴史あるコマンド言語です。テキストにコマンドの羅列を記述するだけで、手軽にシェルスクリプトとして実行することができます。 シェルスクリプトの実体はシェルコマンドの羅列に過ぎませんが、手続き型プログラミング言語にあるような制御構文も備えています。変数や条件分岐、ループ、関数などです。これらを使えばシェルスクリプトでプログラミングも可能です。 もちろん、現代の一般的なプログラミング言語と比べると機能は限られます。他の言語には見られないシェルスクリプト特有の癖や記法も数多くあり、最近の言語に慣れている人ほど、つまずくポイントが多いです。 しかし、シェルスクリプトだからこその良さもあります。Bash は現在でも多くの OS で標準シェルとして採用されており、普段使っているシェルコマンドを書くだけで動かせる手軽さは何者にも代えがたいです。一度身につけておくと長く使えるお得な
なんとなしにBashのリダイレクトとパイプについて調べてたので、後から確認しやすいようにまとめてみることにする。 1.ファイルへのリダイレクト 基本的な使い方。コマンドの実行結果をファイルにリダイレクトする事で、上書きや追記をさせることが出来る。 これについては、UNIX系OSに慣れていない人でもよく知っている事だろう。 「>」で上書き(ファイルの既存内容は削除される)、「>>」で追記書き込みが行われる。 コマンド > ファイル # 上書き コマンド >> ファイル # 追記 で、このリダイレクトだが通常は標準出力しかリダイレクトされない。 この辺りを使い分ける場合は、以下のようにコマンドを実行する。 ※追記書き込み時も同様のため割愛。 コマンド 1> ファイル # 標準出力のみをリダイレクト(デフォルト) コマンド 2> ファイル # 標準エラー出力のみをリダイレクト コマンド &> フ
シェルスクリプト-スペースが含まれる文字列を扱う シェルにおけるスペース(空白文字)の動作 シェルは、引数にスペースを含む場合、スペースを一つのかたまり(意味のある文字列)の区切りとして認識します。 例えば、「Program Files」というディレクトリに移動する場合、以下のコマンドを実行しても、「Program」というディレクトリに移動する動作となります。 $ cd Program Files 「Program Files」ディレクトリに移動するためには、「""(ダブルクォーテーション)」でくくるか、スペース文字をエスケープする必要があります。 $ cd "Program Files" $ cd Program\ Files シェルスクリプトにおけるスペース(空白文字)の動作 シェルスクリプトにおいても、スペース(空白文字)を含む文字列は、スペースを区切り文字として一つのかたまりと認識
5月からの仕事がアプリケーション側でなくインフラ側になったので、急遽シェルスクリプトの勉強。powershellはちょいちょい扱ってはいたけども、Invoke-RestMethod(Linuxでのcurlコマンド)でjson取ってきて加工するみたいなことしかやってこなかったため知識不足甚だしい。 dokkuというbash200行ちょいでdockerベースのPaaS環境を構築できるプロジェクトがあり、せっかくなのでシェルスクリプトを学びつつPaaS構築のことも勉強できたら良いなと思い、dokkuのbootstrap.shのコードを見つつ勉強していきます。 bashスクリプトの先頭 #!/usr/bin/env bash set -eo pipefail; [[ $TRACE ]] && set -x シェルスクリプトの一行目に必ず記述する#!で始まる行はshebangと言われる。 ここで#!
プログラムの種類によっては、そのまま実行できるものと、実行できるようにするために「ビルド」が必要なものとがあります。Cなどのコンパイルが必要な言語で書かれたプログラムは当然ビルドが必要ですし、コンパイルが不要な言語であっても、インストーラパッケージを作るというビルド作業が必要な場合はあります。 ビルド作業の自動化のためのツールとしてmakeなどがありますが、そこまで本格的な事をやる必要がない場合は、シェルスクリプトで「ビルドスクリプト」を作るのが手軽でおすすめです。この記事では、そのような場合に役立つシェルスクリプトのテクニックを4つご紹介します。 エラーの気付きやすさとデバッグのしやすさを高める メッセージに色を付ける シェル関数をライブラリにする 一時的に作業ディレクトリの中に入る エラーの気付きやすさとデバッグのしやすさを高める はじめに紹介するテクニックは問題が発生した時に気づきや
Win10アプデすごい!やれ!bashもapt-getもubuntuバイナリも動く。本当にAniversary Updateだ。 2016/08/02のWindows10 Aniversary Updateは本当にアニバーサリーだ。サーバー系プログラマはインストールするべきだ。以前から言われていた、bashが動き、ubuntuのネイティブのバイナリが動くバージョンがついに[一般]に配布された。設定は文末に記す。apt-getしたらrubyやemacsなどなども、そのまま動く。ubuntuのELFネイティブのバイナリだ。要するに生だ。Macportよりアヴァンギャルドだ。 Windowsで標準パッケージでbinとかetcとかvarなんてディレクトリが見れる日が来るとは思わなかった。 上記の画面を見て欲しい。 Linux version 3.4.0-Microsoft (Microsoft@M
How do I know if a variable is set in Bash? For example, how do I check if the user gave the first parameter to a function? function a { # if $1 is set ? }
設定ファイルの種類と読み込み順序 読み込み順を確かめるには実際に各設定ファイルを作ってそのファイル上でファイル名をechoしてみれば良い ログインシェルの場合(iterm2起動時,SSH,TMUX,SCREENなど含む) zshenv > zprofile > zshrc > zloginの順で、 それぞれglobalを読み込んだ後で、localを上書き読み込み ちなみに以下の〜は環境変数\$ZDOTDIRがあればそれが使われて、なければ\$HOME(つまり〜)が使われます。 \$HOME以外に置きたい場合には\$ZDOTDIRを指定しましょう。 #指定するとgit管理も楽ちんになりますね global) /etc/zshenv local ) ~/.zshenv global) /etc/zprofile local ) ~/.zprofile global) /etc/zshrc lo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く