linuxの最近のブログ記事
おーはーよー (っ´∀`)っ うー
実は未だにスライド書いてる (っ´∀`)っ ゃー です。
いよいよ本日 USP友の会主催 「基礎から学ぶLINUX シェルスリプト講座」第2回 開催です。前回はスライドのみでしたが、今日は実習の時間もありますので、非常に内容てんこ盛りです!参加表明いただいた皆様ありがとうございます!残席僅かですので、もしかしたらこれから参加される方は立ち見になってしまうかも知れませんが、奮ってご参加を。 http://kokucheese.com/event/index/3278/
スペースとTABが混在しているテキストにおいて、普通にawkで区切ると、両方とも区切り文字として認識されます。しかし、「スペースかTABのどちらか」を区切り文字にしたい場合は、次のようにします。
【サンプルのテキスト】
sh-3.2$ cat hoge
1 2 3 4 5 6
ちょっとわかりにくいので、スペースをアンダーバーに置換してみます。
sh-3.2$ cat hoge | sed -e s/\ /_/g
1_2 3_4_5 6
つまり、テキストファイル「hoge」は、2列目と3列目、5列目と6列目の間がTABで区切られている状態です。
【TABを区切り文字にする】
sh-3.2$ cat hoge | awk 'BEGIN {FS="\t"}{print $2}'
3 4 5
【スペースを区切り文字にする】
sh-3.2$ cat hoge | tr " " _ | awk 'BEGIN {FS="_"}{print $1,$2}'
1 2 3
sh-3.2$ cat hoge | tr " " _ | awk 'BEGIN {FS="_"}{print $1"\t"$2}'
1 2 3
sh-3.2$ cat hoge | tr " " _ | awk 'BEGIN {FS="_"}{print $2}'
2 3
かなり力ワザですがw
一旦スペースをアンダーバーに置換してから、アンダーバーを区切り文字にすることで解決。
もっとスマートなやり方があったら教えてください!><
僭越ながら、5月22日の土曜日、新橋でUSP友の会主催 「基礎から学ぶLINUX シェルスリプト講座」の講師をさせていただくことになりました。「Linuxって難しそう」「シェルスクリプトが書けるようになればいいのになー」などの不安や疑問を解きほぐすことを目的にしています。
何か質問がありましたら、 こちらまでどうぞ。
【この勉強会に出るとできるようになること】
・どこでもLinuxができる環境が手に入ります
・Linux+シェルスクリプトを用いて、テキストファイルを加工・編集する方法を学べます。
例えば)HTMLを一括で修正する。書いた文章をある一定のルールに従って編集・加工する。
ウェブページにある情報をテキスト化して、自由自在に加工する。
・愉快なお友達ができます
【アジェンダ】(タイトルは仮題です)
◎食前酒
・USP友の会紹介、自己紹介
◎前菜
・Linuxの環境を作ろう!(石井@USP友の会)
・ターミナルを立ち上げて、使ってみようLinux( (っ´∀`)っ ゃー@USP友の会 )
・簡単スクリプトでtwitterを弄んでみた(カノ@USP友の会)
◎メインディッシュ
・bashを一から教えます( (っ´∀`)っ ゃー@USP友の会 )
◎デザート
・みんなの疑問をみんなで考えよう!(USP友の会と参加者の皆さん)
【対象者】
Linux・シェルを使ってみたいと考えている方
【会費】
500円(資料印刷代として。当日会場にて徴収します)
【お願い】
無線LAN環境をご用意しています。
無線LANにつながるノートPCを持参してください。
※ ノートPCがなくても楽しめるようにしますが、あるとなお楽しいですよ、という意味です。
【懇親会】
勉強会終了後、新橋近辺で懇親会を予定しています。
宜しくお願い致します。
