アカウント名:
パスワード:
若いシステム管理者がサーバメンテナンスのスクリプトを書いていたので肩越しに覗いてみましたよ。
テキストエディタ(Windowsの)の機能をフルに活用し、大量のコマンドをコピペコピペ、置換置換…というように並べて作ってましたね。
萎えた。
そこは、あーしてこーして、awkをちょちょいと振りかければ10行で書けるだろ?その方が作るのも早いし簡単。
せめてエディタはviでやったほうが、編集も早いよ。マウスでドラッグして選択とかやってられんだろ。
というわけで、プログラムとまでは行かないにしろ、スクリプト言語くらいはシステム管理者は使えた方がいいと思う。
シェルスクリプトを書けるか書けないかで、仕事の効率は10倍くらい違うことも。ていか、シェルスクリプトも書けないのにシステム管理者をさせてるのが悪い。
Windowsサーバの管理者も、Power Shellとか使えたほうがいいんじゃないかな。
今時の若造はawkなんて知ってるはずありませんよ勧めるならRubyぐらいにしとかないと年寄り扱いされます#ターミナルやキーボードの仕様の相違をアプリケーション側で吸収しなければならなかった時代じゃないんだからviはもう卒業してくれ
まあ、さすがにawkはないわな・・・。viの悪口は許さないけど。
これがね、なかなか、awkが必要な時があるんですよ。RubyどころかPerlも入ってない。ネットにはつながってない(外部と隔離されている)のでインストールもできない。けれど、複雑な文字列操作をやるスクリプトを書かなきゃいけない。
そんなときにawkが役に立ちます。
UNIX系のシステムなら、OSに標準装備のスクリプトを動かすためにawkは必ず入っているので、そんな時でも大丈夫なんです。
Rubyがーとかいってるシステム管理者は、たくさんありふれているありきたりなLinuxサーバとか管理しているだけの人じゃないかな。そんな恵まれている楽なサーバだけじゃないんだよね、世の中。
バイナリファイルが扱えない、16進数が扱いにくい、という欠点はありますが、おおむねAWKで満足してますね。C ライクに書けて可読性を高めることが可能な点は評価してますしwinでもgawk.exe一つ持ち歩けば済むし。
まあ可読性に関しては、正規表現そのものや、正規表現がからむ『作ったときに「ああこんな例外があったか・・・」と ちまちまちまちま対応した部分』あたりは一月もたつと「なんだこれ」になりますが、それはどんな言語でも同じだと。
shとfindとgrepとsedとawkとmakeとcppとm4とあといくつかのフィルタコマンドで出来ないことに遭遇したことがないので、いまだにperlも書けないよ。python、ruby、phpあたりはコードを見たこともない。
>shとfindとgrepとsedとawkとmakeとcppとm4UNIXのバッドノウハウの塊だなログ中のURLエンコードされたURLをデコードするとか、メール中のマルチバイト名の添付ファイルをその名前で書きだすとか、これらでサクッとできるかな?
いくつかのフィルタコマンドの組み合わせでできるよ。たとえばnkf。
URIエンコードecho $* | nkf -eMQ | tr = %
URIデコードecho $* | tr % = | nkf -emQ
nkfは、MIME base64も対応しているね。
grepとsedで該当箇所を抜き出してパイプ処理すれば、ほら簡単。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
普通のやつらの下を行け -- バッドノウハウ専門家
システム管理者プログラミング (スコア:1)
若いシステム管理者がサーバメンテナンスのスクリプトを書いていたので
肩越しに覗いてみましたよ。
テキストエディタ(Windowsの)の機能をフルに活用し、大量のコマンドを
コピペコピペ、置換置換…というように並べて作ってましたね。
萎えた。
そこは、あーしてこーして、awkをちょちょいと振りかければ10行で書けるだろ?
その方が作るのも早いし簡単。
せめてエディタはviでやったほうが、編集も早いよ。
マウスでドラッグして選択とかやってられんだろ。
というわけで、プログラムとまでは行かないにしろ、スクリプト言語くらいは
システム管理者は使えた方がいいと思う。
シェルスクリプトを書けるか書けないかで、仕事の効率は10倍くらい違うことも。
ていか、シェルスクリプトも書けないのにシステム管理者をさせてるのが悪い。
Windowsサーバの管理者も、Power Shellとか使えたほうがいいんじゃないかな。
Re: (スコア:1)
今時の若造はawkなんて知ってるはずありませんよ
勧めるならRubyぐらいにしとかないと年寄り扱いされます
#ターミナルやキーボードの仕様の相違をアプリケーション側で吸収しなければならなかった時代じゃないんだからviはもう卒業してくれ
Re:システム管理者プログラミング (スコア:0)
まあ、さすがにawkはないわな・・・。
viの悪口は許さないけど。
Re:システム管理者プログラミング (スコア:1)
これがね、なかなか、awkが必要な時があるんですよ。
RubyどころかPerlも入ってない。
ネットにはつながってない(外部と隔離されている)ので
インストールもできない。
けれど、複雑な文字列操作をやるスクリプトを書かなきゃいけない。
そんなときにawkが役に立ちます。
UNIX系のシステムなら、OSに標準装備のスクリプトを動かすために
awkは必ず入っているので、そんな時でも大丈夫なんです。
Rubyがーとかいってるシステム管理者は、たくさんありふれている
ありきたりなLinuxサーバとか管理しているだけの人じゃないかな。
そんな恵まれている楽なサーバだけじゃないんだよね、世の中。
Re: (スコア:0)
バイナリファイルが扱えない、16進数が扱いにくい、という欠点はありますが、
おおむねAWKで満足してますね。C ライクに書けて可読性を高めることが
可能な点は評価してますしwinでもgawk.exe一つ持ち歩けば済むし。
まあ可読性に関しては、正規表現そのものや、正規表現がからむ
『作ったときに「ああこんな例外があったか・・・」と ちまちまちまちま対応した部分』
あたりは一月もたつと「なんだこれ」になりますが、それはどんな言語でも同じだと。
Re: (スコア:0)
shとfindとgrepとsedとawkとmakeとcppとm4とあといくつかのフィルタコマンドで出来ないことに遭遇したことがないので、いまだにperlも書けないよ。
python、ruby、phpあたりはコードを見たこともない。
Re: (スコア:0)
>shとfindとgrepとsedとawkとmakeとcppとm4
UNIXのバッドノウハウの塊だな
ログ中のURLエンコードされたURLをデコードするとか、メール中のマルチバイト名の添付ファイルをその名前で書きだすとか、これらでサクッとできるかな?
Re: (スコア:0)
いくつかのフィルタコマンドの組み合わせでできるよ。たとえばnkf。
URIエンコード
echo $* | nkf -eMQ | tr = %
URIデコード
echo $* | tr % = | nkf -emQ
nkfは、MIME base64も対応しているね。
grepとsedで該当箇所を抜き出してパイプ処理すれば、ほら簡単。