Twitterでそういうのを試みてる人がいて、できるみたいだったので備忘。 bash/zshだと、『$'AsciiCode'』で記述してやるとアスキーコードをその場で直接展開してくれるらしい(知らなかった…)。 [root@BS-PUB-CENT7-01 ~]# echo $'\x6c\x6f\x67\x67\x65\x72\x20\x27\x48\x65\x6c\x6c\x6f\x27' logger 'Hello' で、これをそのまま実行するとコマンドが実行できるのかというと、どうもそうではないらしい。 教えていただいた内容によると、アスキーコードから展開させた場合だと、その結果はシングルクォートで括られた状態で扱われるらしく、アスキーコードでスペースを指定しててもあまり意味がないらしい。 なので、実行するにはevalを利用するか、もしくはスペースだけはアスキーコードから展開させず、そ
似てて紛らわしいものシリーズ [[ / (( bash の記述で初心者泣かせの、似てて紛らわしかったり、どう使っていいかわからなかったり、読み方を間違えてパニックになる記号について。今回は [[ / ((について [[ / (( の違い [[ / (( は if 文の条件判断の中で使われることが多いですが、それ単体でコマンドです。 これらはコマンドなので終了ステータスを持ちます。 [[ は new スタイルの testコマンドです。これで文字列比較やります。 (( は new スタイルの数値計算です。これで数値比較やります。 どちらも if 文でよく使われる どちらも、if 文のなかで使われることが多いんですが、違うものです。似ているものだけど違うものです。 一番大きな違いは 以下の点にあります。 [[ は文字列比較で使われる (( は数値比較で使われる。 [[ 0 == 0 ]] # 文
連載目次 前回はBashのコマンドラインを編集したり、その履歴を管理したりする方法を説明した。今回は、Bashから起動するプログラム=「ジョブ」を制御する方法を説明する。 Bashのジョブコントロール機能 たとえCUIの狭い画面しか使えない状況でも、エディタもツールも同時に使いたいし、manページも開いておきたい。そんなときは、ジョブコントロール機能でツールをうまく切り替えて使おう。 bashのジョブコントロール機能 bash(Linux)には、ユーザーが起動したプログラムを一時的に停止させたり、それをまた再開させたりする機能がある。また単に起動するのではなく、バックグラウンド(裏側)で実行させておき、その間に他のプログラムをフォアグラウンド(表側)でさらに実行させる、といったこともできる。バックグラウンドで動作させたジョブは、表で実行しているジョブ(フォアグラウンドジョブ)に影響を与える
表示例 エスケープシーケンスの構造 記号ばかりでややこしいため図にしてみました。 色以外の \u などについては以下のページが参考になります。 bashのプロンプトを変更するには (atmarkit) 他の色のサンプル 改行について 元々、エスケープシーケンスがあると入力コマンドに折り返しが発生するあたりで表示がおかしくなったので改行を入れて対策していましたが、コメントで教えて頂いた通り、これは先頭の \[ を入れ忘れてたのが原因でした。 違和感あるかも知れませんが、プロンプトに出す情報を増やしても画面が狭くならなくなったのでこれはこれで気に入ってます。 使い所 grepなどで1つ前と2つ前のコマンドの出力の境界を見逃さなくなりました。 開発環境とプロダクション環境の区別や特権ユーザかどうかの区別にも良いと思います。 複数人がログインする可能性のあるサーバは、あんまり好き勝手に弄りたくない
2016 - 04 - 09 Bash on Ubuntu on Windows (Windows Subsystem For Linux) をいじる(2) - サブシステムのアンインストール・インストール方法について Windows 10 Windows ubuntu on windows 今日Issue Trackerを見ていたら、サブシステムのアンインストール・インストール方法が載っていた。 github.com まだ非公式な情報かもしれない。 lxrun コマンドというのがそうらしい。 Performs administrative operations on the LX subsystem Usage: /install - Installs the subsystem Optional arguments: /y - Do not prompt user to accept
UNIXやMacを使用しているユーザーならば誰でも一度はシェルスクリプトを作成した経験があると思います。どんな環境でも使い回せるポータビリティの高さが魅力ですが、プログラミング言語としてみると独特な部分が多く、なんとなく苦手意識を持っている方も多いかもしれません。 本日紹介する「Bash Infinity Framework」はそんなシェルスクリプトの概念を完全に変えてしまうBash用のフレームワークです。 モジュラーかつ軽量で、C#やJava、JavaScriptといった他の言語のコンセプトを取り入れ、プラグ&プレイで必要な機能だけを追加していける特徴を持っています。 主な特徴は以下の通りです: 自動エラーハンドリング 名前付きパラメータ($1、$2ではなくて) 配列とマップをパラメータとして引き渡せる try-catchの実装 独自例外のthrow キーワードのインポート 出力を改善す
Windows上のBashシェル入門【Windows 10 Fall Creators Update対応】(1) Windows Subsystem for Linuxとは? そのインストールと使い方 Fall Creators Updateで正式版として提供されることになった「Windows 10上で動作するLinuxサブシステム」によるBashシェルの基礎を理解・マスターすることをゴールとして、Windows Subsystem for Linux(WSL、旧称:Bash on Ubuntu on Windows)の概要から、インストール方法までを解説。また、よくある疑問をQ&A形式で短くまとめる。 連載 INDEX 次回 → “Windows Subsystem for Linux”(以下、WSL)は、2016年4月の発表当時から「WindowsにBashシェルが入る!」と大きな話題
はじめに 昨日紹介した記事で導入したUbuntuは14.04でした。 これを無理矢理16.04にアップグレードしてみようという試みです。 人柱気質のある人以外には非常におすすめしないですが、まぁ一応できますよ程度に。 2016/12/18追記 Windows 10 Insider Preview 14986においてデフォルトでUbuntu 16.04.1がインストールされるようになりました。 来春予定されている大型アップデートにも引き継がれる見通しです。 アップグレード手順 とりあえずいつも通りのアップグレードコマンドを実行します。 クラッシュ防止のためのオプションが色々付いていますが気にしない。 途中でy/Nで答えさせるようなプロンプトが出ますが、これに答えるとフリーズします。 とりあえずyと答えてから、Ctrl-Cでアップグレードの実行を止めます。 Configuration file
プログラミングっぽい話を中心にします。 そうでないほうはm0t0k1.tumblr.comのほうで。 かなり遅まきながら自分のWindows10にもBashを連れてまいりました。 導入はものすごく簡単なので、すでにInsider Previewからご利用の方も多いのかもしれません。 わたしはそれほど興味がなかったので(PowerShellでだいたい間に合ってる)、今頃の参加となりました。 それも、導入の動機がPowerShellだからです。 PowerShellがオープンソース化されたいろんなところで話題になったようでなっていない、PowerShellのオープンソース化です。いよいよmacOSやLinuxでも利用できるようになりました。 いままでの電子書籍もきちんと「Windows」とつけててよかったと思っています。 こんなものより、さきにcmd.exeをオープンソース化しろという声が聞こ
原文は 2015 年 8 月 24 日に掲載されました。 IBM は LinuxCon Seattle で 2 つの LinuxONE メインフレーム システムに関する重大な発表を行いました。三大 Linux ベンダーのひとつ (他の 2 社は SUSE と Red Hat) であるCanonical はこれまでメインフレーム用 Linux を提供していませんでしたが、今回の発表で Canonical の Ubuntu が仲間に加わりました。 Canonical と Ubuntu の創設者 Mark Shuttleworth は LinuxCon でのインタビューで、「メインフレームを必要とする Ubuntu ユーザーは、Ubuntu が他のプラットフォームに提供しているものと同じ機能を利用できるようになる」と言っています。しかしLinuxONE で Ubuntu を利用できるのは、次の
This is your best way to interact directly with the Windows Subsystem for Linux teams. We will be monitoring and responding to issues as best we can. Please attempt to avoid filing duplicates of open or closed items when possible. Issues may be tagged with with the following labels: bug – The issue considered to be a bug internally by the dev team. This tag is generally for gaps in implemented (re
The WSL commands below are listed in a format supported by PowerShell or Windows Command Prompt. To run these commands from a Bash / Linux distribution command line, you must replace wsl with wsl.exe. For a full list of commands, run wsl --help. If you have not yet done so, we recommend updating to the version of WSL installed from Microsoft Store in order to receive WSL updates as soon as they ar
WSL(Windows Subsystem for Linux)とは? Windows 10ではLinuxのプログラムを実行可能にする「WSL(Windows Subsystem for Linux)」が利用できる。当初、このWSLは実験的なβ版(当時の名称は「Bash on Ubuntu on Windows」)として提供されていたが、Windows 10 バージョン1709(ビルド16299)以降では正式なOS機能の一つとなっている。 現在ではLinuxシステムとの互換性も向上した他、Microsoft Store経由でのインストール、Ubuntu以外のディストリビューションの提供、コマンドプロンプトからWSLのコマンドを呼び出し可能になるなど、機能も向上している。 Linxu環境をエミュレーションするWSL WSLはWindows OS上でLinuxの実行環境を実現するサブシステムで
Say, I have a script that gets called with this line: ./myscript -vfd ./foo/bar/someFile -o /fizz/someOtherFile or this one: ./myscript -v -f -d -o /fizz/someOtherFile ./foo/bar/someFile What's the accepted way of parsing this such that in each case (or some combination of the two) $v, $f, and $d will all be set to true and $outFile will be equal to /fizz/someOtherFile?
すこし記事が長いため、簡単なアウトラインを書いておきます。要点だけ掴みたい場合は、最終項の「まとめ」を読むのがいいかもしれません。 コマンドライン引数の一般的な解析手法 それぞれの特徴 〜 getopt と getopts の違い getopts(メリット・デメリット) getopt(メリット・デメリット) 自前で解析しちゃう(唯一のデメリット) まとめ ============================= コマンドライン引数を処理する一般的な手法として、 getopts getopt shift などで自力で解析 といった具合に、上から順に考えつくかと思います。getopt(3) は UNIX において、コマンドの引数を処理する一般的な C 言語のライブラリ関数です。それを用いて実装されたコマンドが getopt(1) です。Bourne シェル系だと内部関数になりますが、同系統の
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く