UNIX用のシェルにはBourne Shell、C Shell、Korn Shell、bashなど幾つかの種類が存在し、Red HatLinux のデフォルトのshell はbash が採用されています。Shell によってコマンドや操作方法が変わってくることもあるので、できるなら普段、使い慣れているShell を使いたいものです。あるいは、勉強のために他のShell もいじってみたい方もいるでしょう。目的は人それぞれですが、ここでは、そのデフォルトShell の変更方法について説明していきます。 ■Shell の種類を確認する 使用できるシェルの種類を調べるには、/etc/shells を参照するか、もしくは、chsh -l コマンドを実行します。 # cat /etc/shells もしくは、chsh -l /bin/sh /bin/bash /sbin/nologin /bin/b
aa cc aa cc bb cc dd ee % uniq [file1] aa cc bb cc dd ee % uniq -c [file1] 2 aa cc 1 bb cc 1 dd ee
ツールをインストールするなど,シェル上で操作する入出力される情報は,後でどのような操作を行ったかを把握する際に便利なものだ。 次のようにscriptコマンドを利用すれば,ファイルとして保存することができる。ここでは例として「messages.log」というファイル名にしたが,自由に指定しよう。

UNIXを使用した時のQ&Aについてまとめてあります。 このQ&Aは、実際に発生した質問とその回答を掲載しています。 Q.CGIで、root権限を必要とするコマンドを動かしたいのですが?CGIは、webmasterユーザで動作するため、root権限を必要とするコマンドが使用できません。 A.setuid関数とsetuidビットを使うことで可能です。 以下に、root_commandというroot権限を必要とするコマンドを、suid_commandという名前で、一般ユーザが実行できるようにする方法を説明します。 まず、setuid関数を使用して、cプログラムを作成します。 unix> vi suid_command main() { setuid(0); setgid(0); system("./root_command"); } これをコンパイルします。 unix> cc -o suid
Arrêt du service Pages perso Le service est définitivement fermé depuis le 05 septembre2023. La récupération de vos fichiersainsi que la création de redirections d’URL est fermée depuis le 09 janvier 2024. La redirection sera activejusqu'au 05 septembre 2024 sous réserve que vous soyez toujours client Orange Internet. Merci de votre compréhension.
ディレクトリ内のファイル数を速く数える研究。for CentOS4 ext3 結果 ls [dir] << ls -f [dir] << find [dir] -type f 普通に ls するとファイル名でソートされるので遅い。-f オプションをつけることによってソートしない分速くなる。それでも find のほうがシャア程度に速い。 実験結果: 12,000強のファイル数のあるディレクトリのファイル数を数える % time ls dir |wc -l real 0m0.187s % time ls -f dir |wc -l real 0m0.090s % time find dir -type f|wc -l real 0m0.036s しかし、MacOS HFS+ の場合は ls -f と find はだいたい同じくらいの速さ。ちょっと ls のほうが速いくらい。
他の言語をを書き慣れてから、シェルスクリプトを書こうとするとしょうもない部分でハマったりすることがあります。「簡単な処理だからシェルスクリプトで書くか」と思っても無駄に時間がかかってしまっては仕方ないですよね。 今回は初めてシェルスクリプトを書くときに、ハマりそうな点について説明をしたいと思います。 実行権限をつける 単純にファイルを生成しても下記の用に実行しようとしても実行はできません。 # touch test # ./test sh: ./test: Permission denied # touch foo # ./foo sh: ./foo: Permission denied これはファイルに実行権限がついていないため、起きる現象です。 chmodコマンドを使って実行権限をつけてやりましょう。 # chmod +x test # ./test # chmod +x foo #

mizutani@edu.tuis.ac.jp grepを実際に使ってみるために,サンプルファイルcopying.txt(GNU GENERAL PUBLIC LICENSEの文書)を利用してみよ. 目次 grepの使い方(I) grepの使い方(II) grepの主なオプション grepで使える正規表現 grepで使えるメタ文字 目次 grepの使い方(I) grepは次の形式に従って,指定したファイルfilenameに対してパターン/pattern/のパターンマッチを行う. % grep pattern filename filenameとして複数のファイル名を指定すると,それらのファイルを対象に処理を行う. パターンに正規表現を使わなくてもgrepは有用である. 以下の例では,検索対象となるファイル群があると思われるディレクトリにワーキングディレクトリを移動しているとする. そうでな
ウノウラボ Unoh Labs: コマンドラインで作業する上で知っておくといいテクニック% find . -name '*~' -exec rm {} \; 404Blog Not Found:勝手に添削 - find(1)% find . -type f -name '*~' | xargs rm % find . -type f -name '*~' |perl -nle unlink わたしなら% find . -type f -name '*~' | sed 's/^/rm /'で確認し、OK なら% find . -type f -name '*~' | sed 's/^/rm /' | shで消します。 いまどき fork/exec rm のオーバーヘッドがどれほどのものか。 xargs を使うとき、rm が 1回だけ実行されるときと、ARG_MAX を超えたときに rm
Linuxを使っていて、複数のファイル内に散らばっている、ある文字列を一括して置換する方法。 特定の環境にあわせて、一気に特定のパラメータを書き換えたい場合とか。 $ find . -type f -name '*.html' -print0 | xargs -0perl -i.bak -pe 's/from/to/g'findとperl+正規表現で。 上の例は、今いるカレントディレクトリ以下の全ての".html"ファイル内の"from"という文字列を全て"to"に置き換えるワンライナー。 変更が行われたファイルは全て".bak"という拡張子で元のファイルがバックアップされます。 # ちなみに、"-i"の後ろに拡張子を書かないと実行すると、バックアップは取られず書き換えられる。 ファイル名に空白文字が入る場合も考慮して、findに-print0オプションを付けて、xargs -0で受け取

FOSSwire.comの Unix/Linux Command Referenceの和訳です。 これをベースに自分あるいはチーム内で使うシートを作ってみると良いかもしれません。 間違いがありましたら指摘してくださいませ。
Oracle’s purchase of Sun Microsystems has been the cause of some uncertainty and concern for the open source projects and initiatives that Sun were previously responsible for.Oracle are not known for being particularly welcoming or supportive of FOSS — and with the relatively high profile OpenSolaris project being cancelled soon after the acquisition, much of that concern appearsjustified. Atten
今日は、Linux初級編として、ML40でrootパスワードを忘れた時の対処法(ブートローダがGRUBの場合)について書きます。 GNU GRUBのブート画面で起動するカーネルの行にカーソルを移動し、「e」キーを押します。 Asianux (2.6.9-34.21AXsmp Asianux (2.6.9-34.21AX) 次に kernel /vmlinuz-2.6.9-34.21AXsmp ro root=LABEL=/1 のように書かれているkernel行にいき、「e」キーを押します。 その後は grub edit > kernel /vmlinuz-2.6.9-34.21AXsmp ro root=LABEL=/1 のような編集画面が出てくるので、以下のように1またはsingle(S,s)と追記します。 grub edit > kernel /vmlinuz-2.6.9-34.21A
1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く