UNIX用のシェルにはBourne Shell、C Shell、Korn Shell、bashなど幾つかの種類が存在し、Red Hat Linux のデフォルトのshell はbash が採用されています。Shell によってコマンドや操作方法が変わってくることもあるので、できるなら普段、使い慣れているShell を使いたいものです。あるいは、勉強のために他のShell もいじってみたい方もいるでしょう。目的は人それぞれですが、ここでは、そのデフォルトShell の変更方法について説明していきます。 ■Shell の種類を確認する 使用できるシェルの種類を調べるには、/etc/shells を参照するか、もしくは、chsh -l コマンドを実行します。 # cat /etc/shells もしくは、chsh -l /bin/sh /bin/bash /sbin/nologin /bin/b
のように実行してもよい。-xオプションにより、コマンドの実行状況が標準エラー出力に出力される。 例として、以下のシェルスクリプト(backup.sh)を作成する。 #!/bin/sh TIME=`date +%y%m%d` while [ $# -gt 0 ] do cp -r $1 $1.$TIME shift done$ /bin/sh -x backup.sh gterm-error01.png sample.pdf ++ date +%y%m%d + TIME=050824 + '[' 2 -gt 0 ']' + cp -r gterm-error01.png gterm-error01.png.050824 + shift + '[' 1 -gt 0 ']' + cp -r sample.pdf sample.pdf.050824 + shift + '[' 0 -gt 0 ']
シェルの作成・実行 ・ シェルスクリプトとは ・ シェルの書き方 ・ シェルの実行 変数 ・ シェル変数 ・ 特殊な変数 制御構文 ・ if ・ case ・ while ・ for ・ until 演算・比較 ・ 四則演算 ・ 数値比較 ・ 文字列比較 ・ ファイルチェック ・ 論理結合 関数・オプション ・ 関数の作成 ・ オプションの使用 サンプルスクリプト集 ・ 共通関数を外部ファイルに作成する ・ ヒアドキュメントの利用 ・ findコマンドの有効利用 ・ リストファイルを読み込んで処理する
Grep をすると、ファイル名の他に、行番号が欲しいときがあります。 -n オプションをつければ行番号がでてくる。 grep -n KEYWORD または grep --line-number KEYWORD man(マニュアルの解説) -n, --line-number 各出力行の前に、入力ファイルにおける行番号を表示します。 簡単に行番号が付いてきます。便利です。 いつでも行番号 常に行番号を表示するには alias を遣います alias grep="grep -n --color=auto "これを.bashrcに追記しましょう ファイルの中から<?phpを検索した例 takuya@pc192168095097:~/pne/apps/pc_frontend/templates$ grep "<?php" _layout.php -n | head -n 5 4:<?php incl
カーネルなど大規模なソースコードを検索したい場合、findとgrepを使ったり、タグジャンプを使うだろう。Eclipse使う場合とか異論はあると思うけど、今日はfindとgrepの合わせ技について調べてみた。 普段はxargsを噛ませて、 $ find . -name \*.c | xargs grep hogehogeとかやるんだけど、findの-execオプションを使った場合とどれくらい性能差があるのだろうか? 評価環境はVMWare Fusion上のUbuntu 11.04。Linux kernel 2.6.28.10のfs以下で、まずは次の3パターンを比較してみた。3回測定してtimeの最良値を示す。おそらく対象ファイルはファイルキャッシュに載っている思う。 $ time find . -name \*.c -exec grep wait_event_interruptible {
IDEの発展やAjaxなど現在のデベロッパにとってGUIとうまくお付き合いすることは開発効率を上げるうえで必須といえる。しかしながら、シェルというCUI環境も根強い人気がある。GUIと違ったカスタマイズ、アジリティ、効率の良さ、幅広い対応プラットフォームなど、なくてはならないものだ。 本連載ではそうしたCUI環境の充実を補佐することを目的とし、"zsh"について語ってみようとおもう。かつてzshはUTF-8の扱いが弱いところがあったが、それもずいぶんと改善され、ここ1年でzshへ移行しやすい状況が整ってきている。はじめるには悪くないタイミングだ。 最初に軽くzshについて紹介しておこう。 名前につく"z"の文字は、「究極の」という意味がこめられているらしい。系統としてはsh系である。つまり、zshはsh系の超高機能シェルといえるだろう。Linuxなどのユーザーであればsh系であることの意味
This Bash shell scripting guide is not a detailed study but a quick reference to the BASH syntax. So lets begin... Common environment variables PATH - Sets the search path for any executable command. Similar to the PATH variable in MSDOS. HOME - Home directory of the user. MAIL - Contains the path to the location where mail addressed to the user is stored. IFS - Contains a string of characters whi
If you are an admin of a website and you see a lot of bogus traffic coming from some countries which give no profit to you, and you want to block those countries from accessing your website then you can use the bash script given below. There are two ways to block countries. First is to configure your Apache server and second is to set iptables commands. We will do this using iptables. First of all
command 2>&1 | tee command.log とかやって、command の標準出力を画面上でも確認しながら、ログにも出力したい、というケースは割とあると思います。 ただ、command の実行が成功したかどうかも知りたい。単純にパイプでつなげてしまうと、一番最後のコマンド(この場合は tee)の終了コードしか取れないんだよね。 まあ、でも簡単に取得できるよね、と思ったら、意外と試行錯誤してしまったという話。 前提知識 コマンドをグルーピングするためには、丸括弧「()」と中括弧「{}」が利用できます。 丸括弧でグルーピングしたものは、サブシェル(子プロセス)で実行される 中括弧でグルーピングしたものは、カレントシェル(自プロセス)で実行される という違いがあります。例えば、 hoge=0 (hoge=1) echo $hoge # ->「0」が出力される。(子プロセスで変更
Currently, there is only one way of talking to a WordPress installation: HTTP requests. Whether you use a web browser, an XML-RPC application or just wget, it’s still just HTTP underneath. But what about when said WordPress installation is on the same machine you’re on? More to the point, what if said machine was running an operating system which supported an UNIX shell? Well, for one thing, you w
http://d.hatena.ne.jp/dharry/20110122/1295681180 シェルスクリプトであーだこーだしていましたが、pvコマンドという便利なものがあるとは知らなかった。 まずはpvとdialogコマンドをインストール sudo apt-get install pv dialog 圧縮したり tar cf - ./test | pv | gzip -1 > test.tgz 375MB 0:01:06 [5.82MB/s] [ <=> ] 展開したり pv test.tgz | tar xzf - 68.5MB 0:00:02 [ 32MB/s] [===========================================>] 100% man pv にあるexampleが爽快だった。 (tar cf - . | pv -n -s `du -sb .
シェルのテクニックと“脳力”を磨く!? (2008/05/24) 西村めぐみ/イラスト:つやまあきひこ 印刷用ページ 要らない部分を削除する うーん、確かにボクが見たい行は抜き出せたみたいだけど……これじゃわかりにくいよ。IPアドレスとかWebブラウザの名前とか必要ないし。 それなら、この実行結果をさらにsedコマンドで加工すればいいじゃない。こないだ教えたばかりだから、sedの使い方は覚えてるよね(第4回を参照)? えーと、写真のファイル名は数字4ケタだから、パスを正規表現で表すとこうなる……よね? あー、惜しい。基本的には「正解」なんだけど、sedの引数に指定するんだったら、「.jpg」の「.」は、正規表現の特殊記号(「何か1文字」って意味ね)じゃないことを示すために、前に「\」を付けなくちゃならない。あと、「{4}」の部分は拡張正規表現(ここがポイント2参照)にあたる
Sorry! This site has been closed by administrator! Please contact administrator!
NAME WWW::Mechanize::Shell - An interactive shell for WWW::Mechanize SYNOPSIS From the command line as perl -MWWW::Mechanize::Shell -eshell or alternatively as a custom shell program via : #!/usr/bin/perl -w use strict; use WWW::Mechanize::Shell; my $shell = WWW::Mechanize::Shell->new("shell"); if (@ARGV) { $shell->source_file( @ARGV ); } else { $shell->cmdloop; }; DESCRIPTION This module implemen
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く