タグ

shellに関するseuzoのブックマーク (27)

  • Lessの便利な使い方

    最近 Stop using tail -f (mostly) や 「tail -f」を使うのは情弱、情強は「less +F」を使う などless押しな記事が幾つか上がっているんだけど、タイトルが煽り気味なのか若干反感を呼んでいるようなのでless派が職場で肩身の狭い思いをしないようにもう少し便利な使い方を紹介したい。 tail -fの様なScroll forward less +Fで起動またはless起動中にF 元記事にもあるtail -fと同様の振る舞い。正直この機能と検索だけでいいのであればtailで十分。lessの便利なところは様々な機能との組み合わせにあって、これから紹介する機能は基的にこのモードと組み合わせが可能だ。あと、less開いてFのほうがタイプが面倒くさくないのでおすすめ。 1行で表示する (改行しない) less -Sで起動またはless起動中に-Sr(-Sでモード切

    Lessの便利な使い方
  • 編集作業をシェルスクリプトを使って自動化してみた

    日経Linuxでは、連載まんが「#!シス管系女子」やムック「まんがでわかるLinux シス管系女子」(2月18日発売)など頻繁にシェルスクリプトの書き方を解説している。 シェルスクリプトとは、LinuxなどUNIX系OSのコマンドを並べて処理を自動実行するためのプログラム。このシェルスクリプトを使う目的は、作業の効率化だ。シェルスクリプトを使えば、パソコン上で行う作業の多くを自動化できる(写真1)。 写真1●シェルスクリプトを使うと便利な場面。シェルスクリプトを使えば作業時間を短縮できる。ムック「まんがでわかるLinux シス管系女子」より このような連載まんがやムックの編集を担当している筆者だが、日々の業務にシェルスクリプトを生かすことはまれである。記事の中で使うシェルスクリプトを書くくらいだ。 そこで、この機会にシェルスクリプトによる、日々の業務の効率化について少し考えてみた。意外とシ

    編集作業をシェルスクリプトを使って自動化してみた
    seuzo
    seuzo 2015/02/19
  • シェルスクリプトのreadでControl-a等を読み取る: ANSI C quoting

    B! 26 0 0 0 trashコマンドを拡張 している時に、選択画面で上下するときにVimみたくCtrl-F で1画面進む、みたいなことしたいな、と思って Controlキーを含んだ入力をreadで読み取って扱う方法を取り入れたのでそのメモ。 入力キー1つを受け取る Controlと同時押しのキーを受け取る Tips 8進数または16進数で書くときの注意 Ctrl-Cを使いたい場合 水平タブ(Ctrl-I)等を使いたい場合 使えない文字 ESCを判断する まとめ 入力キー1つを受け取る 入力キーを1つ受け取るにはBashでは read -s -n 1 c Zshでは read -s -k 1 c とします。 スクリプトがこの時点まで進んだ時に入力待ちになって、 何か1つでもキーを押すと、そのキーがcに入ります。 必要なら直前に echo -n "input: " とでも出しておけばわか

    シェルスクリプトのreadでControl-a等を読み取る: ANSI C quoting
    seuzo
    seuzo 2015/01/28
  • シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」

    LINQ in Unity LINQ to GameObject - https://github.com/neuecc/LINQ-to-GameObject-for-Unity/ UniRx - https://github.com/neuecc/UniRx

    シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」
  • 危険!決して実行してはいけないLinuxコマンド7個(+1個) | 俺的備忘録 〜なんかいろいろ〜

    Linuxでは、実行することでシステムに重大な影響を及ぼす操作がいくつもある。 今回は、全てのシステム領域を削除してしまうようなものだったり、重要データを削除してしまうような危険なコマンド7個を紹介する。 1.rm -rf rmコマンドでファイルを削除する際、このオプションを用いて削除することで非常に手っ取り早く作業を行う事が出来る…のだが、ちょっとしたタイプミスをしてしまった場合、消してしまってはいけないファイルも強制的に削除されてしまうこともある。 以下に例を記載しよう。 rm :ファイルを削除するコマンド。 rm -r :フォルダを指定することで、再帰的に中のファイルを削除する。 rm -f :削除確認無しに、強制的にファイルを削除する。 ここまでは問題無い使い方。実際に危険なのは、以下のコマンドになる。 rm -rf / :実行するとルートディレクトリ配下を強制的に削除する。 rm

  • naoya_itoの火を噴いたシェルtips - Togetterまとめ

    Naoya Ito @naoya_ito シェルでパスワード入力プロンプトでるじゃないですか。途中まで打って間違えたとするじゃないですか。Ctrl + u 打つとリセットできるの知ってた? 俺は知ってた 2014-04-07 19:40:06

    naoya_itoの火を噴いたシェルtips - Togetterまとめ
    seuzo
    seuzo 2014/05/22
  • bashなどのshellでシングルクオートをエスケープする方法 - 中野智文

    bashなどのshellでシングルクオートで囲まれた中でシングルクオートをエスケープする方法は残念ながらない。たとえば、 ssh host02 'ssh host03 \'ls -l\' 'みたいなことはできない。 しかし、クオートを一旦閉じてから、シングルクオートをバックスラッシュでエスケープして入力しその後クオートを再開することで、そのようなことが実現できるようだ。 ssh host02 'ssh host03 '\''ls -l'\'' 'すなわち、\'ではなく、'\''ということだ。 おまけ: シングルクオートを'\''に置換するワンライナー ruby -pe '$_.gsub!(/'\''/, %q('"'\\\\\\\\''"'))'

    bashなどのshellでシングルクオートをエスケープする方法 - 中野智文
  • UNIX & Linux コマンド・シェルスクリプト リファレンス

    目次 当サイトについて bash シェルスクリプト入門 -シェルスクリプトのいろは- コマンド Tips シェルスクリプト Tips 変数を使用する 配列を使用する 入力と出力 if 文と test コマンド for 文の使用方法 while 文の使用方法 case 文の使用方法 関数の使用方法 引数を処理する 終了ステータス シグナルと trap コマンド フィルタを使用した文字列操作 1 フィルタを使用した文字列操作 2 日付を取得する 文字コードと改行コード シェルスクリプトのデバッグ AWK リファレンス (Deprecated) シェルスクリプト ライブラリ 『ether.sh』 お知らせ Bluesky を始めました @sunone.me 変更履歴 2023.10.07 ページ内リンクを修正した。 2021.02.01 このサイトに「もう 1 ページ追加しよう」と思ってから、も

    UNIX & Linux コマンド・シェルスクリプト リファレンス
  • bashによるシェルスクリプトの小技(2) - shibainu55日記

    前回(bashによるシェルスクリプトの小技(1))に引き続き、シェルによって自動的に値が設定される特殊な変数について紹介する。特殊な変数を参照することにより、様々な情報を取得することができる(ただし、これらの変数には自分で任意の値を設定することはできない)。 さて、まずは特殊変数を一覧でまとめてみる。お馴染みのものが多いが、最後の2つ(特に最後のPIPESTATUS)についてはきっと今まで知らなかった人もいるんじゃないだろうか。シェルの中でパイプすると途中のコマンドのリターンコード、拾えないとか思っていませんか?今回のポイントとしては、「1. PIPESTATUS変数について」と「2. 特殊変数 $@と$*の違いについて」の2点を主に説明する。 特殊変数一覧表 変数名 自動的に設定される値 $? 直前に実行されたコマンドの終了ステータスが設定される変数。正常終了の場合は「0」、異常終了の場

    bashによるシェルスクリプトの小技(2) - shibainu55日記
    seuzo
    seuzo 2013/03/28
  • シェルにおけるタブと改行の扱い - ザリガニが見ていた...。

    最近はradikoやらじる★らじるのタイマー録音絡みで、シェルスクリプトを触る機会が多かったのだが、 再びradikoで録音したい! - ザリガニが見ていた...。 予約日時になったらちゃんと目覚めるtimerコマンドが欲しい - ザリガニが見ていた...。 radikoをキーワードで予約する - ザリガニが見ていた...。 自分の思いどおりに動作する時とうまく動かない時の原因は、そのほとんどが、スペース・タブ・改行を扱う時の勘違いにあると感じてしまった...。その扱いを正確に理解していれば、シェルスクリプトはかなり高度なテキスト処理を最初から的確にこなしてくれるはずだ。シェルスクリプトを理解するポイントの1つは、これらの目に見えない文字を、頭の中で正確に思い描く想像力かもしれない。現状の理解をメモしてみた。 検証環境 MacBook Pro Retina15 OSX 10.8.2 bas

    シェルにおけるタブと改行の扱い - ザリガニが見ていた...。
  • シェル操作課題 (cut, sort, uniq などで集計を行う) 設問編 - Yamashiro0217の日記

    この記事は弊チームの新人の方にシェル操作に慣れてもらうために作った課題である。 皆様のチームの新人にやってもらってもいいですね。 あとで解答編を書く。 もちろん他の方も解いてもらって構わない。 というか僕の解答以上の解答がきっとあるはずなので、それを教えて欲しい。 はてブで解答でも面白解答お待ちしてます。 さて題。 Webアプリケーションを作っていると偉いさんとか、いわゆる企画の人とかから 「ちょっと○○がどうなってるかログから数字だせない?」 とさらっとお願いされたりする。 そこで「いや、ちょっと手が空いてなくて(こっちは忙しいんだよ糞がっ)」と答えたくなるかもしれないが、 そこは「じゃあさくっとやっておきますよ!僕にかかればちょろいっすよ!」と答えらればかっこいい。 (あまりさくっとやりすぎるとそういう細々依頼がたくさんくる諸刃の剣) 例えば以下のようなログファイルがあったとする。

    シェル操作課題 (cut, sort, uniq などで集計を行う) 設問編 - Yamashiro0217の日記
  • シェルスクリプトを書く際に気を付けていること8箇条 - カイワレの大冒険 Third

    エンジニアという職業柄かシェルスクリプトを書くことはちょくちょくあるのですが、自分なりに気を付けていることを備忘録&自分への戒めも含めて、簡単に書いてみたいと思います。 変数は大文字 シェルスクリプト書いていれば変数の出番は至るところであるでしょう。その際、可読性を増すように、変数は大文字を使っています。 RET=`cmd1`みたいに。好みの問題もあるでしょうが、分かりやすいので。 クオテーションは選ぶ クオテーションにはシングルだったり、ダブルだったり色々ありますが、使い分けておいたほうがよいでしょう。 変数の展開がないようであれば、シングルクオーテーションのほうがスマートでしょうし、展開があるのならダブルクオーテーションを使えばと。 ダブルクオーテーションを使うのにも意味があって、変数は「$RET」のようにクオテーションで囲まなくても動作はたいていするのですが、 echo "${RET

    シェルスクリプトを書く際に気を付けていること8箇条 - カイワレの大冒険 Third
    seuzo
    seuzo 2012/02/24
  • シェルスクリプトからsshでリモートコマンドを実行する際の注意点 - 矢野勉のはてな日記

    メモ, プログラミングシェルスクリプトからsshで複数のリモートホストにコマンドを投げつける処理を書いてて、いろいろ気がついたことを、あとで自分で調べられるようにメモしておく。 ループからsshでコマンドを投げつけるシェルスクリプトのwhileループ内から、複数のホストへ順番にコマンドを投げつける処理をかいていると、最初のホストにしかコマンドが飛ばない(ループしない)これは、シェルスクリプトのwhileループ自体が、標準入力の読み取りに依存しているのに、sshも標準入力を読み取るのが原因。たとえばこんなループの場合に起きる。 somecommand | while read LINE do ssh user@hostname 'sh yourcommand /dev/null 2>&1 &' done nオプションを付けることで、sshの標準入力が/dev/nullに変わりバックグラウンド

  • シェルスクリプトはエレガントでなければならない

    /bin/shの実体としてはash(dash)、bash、kshの採用例が多い。どのシェルもBourne shellの機能に加えて、拡張機能を提供する。 FreeBSDなどの*BSD系のOSは、ashを/bin/shとして使っている。ashはPOSIX.1(POSIX:2008)にいくらかのBSD拡張機能を取り込んだシェルだ。メモリをあまり消費せず、高速に動作し、ほかのライブラリに依存することが少ない。従って、rootやレスキューシステムのインタラクティブシェル、システムのシェルスクリプトといった場面で採用されている。 Mac OS Xはbashを/bin/shに採用している。FedoraやopenSUSEなどのLinuxディストリビューションもbashを/bin/shに採用している。LinuxディストリビューションでもUbuntuやDebian、Linux Mintなどは、高速に動作する

    シェルスクリプトはエレガントでなければならない
  • Linux でシステムの起動時に 1 度だけ処理を実行する。 - D.

    システムの起動時に一度だけ実行する処理は、普通は /etc/rc.local に書くわけだが 、1 ファイルにすべてを書いてしまうと管理が煩雑になったりする。まとまった処理ごとにファイルを分けておいたほうが管理が楽だ。 そこで /etc/rc.local の内容を以下の通りにする。 #!/bin/sh if [ -d /etc/rc.local.d ]; then for i in /etc/rc.local.d/*; do if [ -r $i ]; then . $i fi done unset i fi exit 0 /etc/rc.local.d というディレクトリを用意する。ここにシェルスクリプトの書かれたテキストファイルを入れておくと上のスクリプトによってすべて実行されることになる。ファイル名は何でも良い。 イー・モバイル端末が体に接続されていれば接続する例 (ネットブック等

    Linux でシステムの起動時に 1 度だけ処理を実行する。 - D.
  • はてなブログ | 無料ブログを作成しよう

    今の自分は、出会った人や読んできたによって、できあがっている あの小冊子は、新聞の付録だったのか、記憶が曖昧で定かではないのだが、1ヶ月に1回程度の頻度で届いていた気がする。オールカラーで内容もさまざまだった気がする。その中には、プロ野球の選手名鑑もあって、私は、母から受け取り、大切にしていた記憶がある。母は、…

    はてなブログ | 無料ブログを作成しよう
    seuzo
    seuzo 2009/12/07
  • UNIX & Linux コマンド・シェルスクリプト リファレンス

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • Route 477(2009-07-13)

    ■ [mac][zsh][screen] Macのターミナルからクリップボードの読み書きをしたい pbcopyというコマンドを使えばできる。のだけど、2点ほど罠が。 1. screen上だと駄目 最新版を自前でコンパイルしよう。screenのcopyでクリップボードにコピーできるようにするパッチもあるみたいだけど、それはお好みで。 http://blog.dealforest.net/2009/06/can-use-pbcopy-on-screen/ 縦分割(prefix + |)もできるようになってお得。 2. 日語が通らない zshの設定でいけるらしい。 http://d.hatena.ne.jp/ama-ch/20090115/1232000087 使い方 $ svn di | pbcopy とか $ pbpaste > Rakefile とか。 21 http://reader.

    Route 477(2009-07-13)
  • Apple, Mac, iPhone, iPad, and iPod Reviews, Help, Tips, and News | Macworld

    seuzo
    seuzo 2009/07/04
    ログアウト時に履歴を消去するシェル
  • [Mac OS X] シェルスクリプトとかの CUI アプリケーションを Mac OS X 方式の .app にする方法 [簡単 5 ステップ]

    ■ [Mac OS X] シェルスクリプトとかの CUI アプリケーションを Mac OS X 方式の .app にする方法 [簡単 5 ステップ] シンプルで高性能な Mac OS X 用の sshfs 実装の sshfs for Darwin の 2.5.0 をリリースしました。 で、今回 mount/umount を Terminal.app からではなくて Finder から出来るような形にしたのでその方法。