ちゃんとカテゴリ分けされておりませんので、
記事をお探しならブログ内検索が便利です。
ご活用くださいませー+.(≧∀≦)゚+.゚
ブログ内検索
カレンダー
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
カテゴリー
最新コメント
[11/22 รูปพวงหรีดแสดงความเสียใจ]
[11/22 ดอกไม้ งานศพ]
[11/22 ช่อดอกไม้ตามสั่ง]
[11/22 ร้านดอกไม้บรรยากาศอบอุ่น]
[11/21 Robertret]
最新記事
(08/22)
(02/19)
(01/16)
(12/29)
(12/28)
最新トラックバック
プロフィール
+ハンドル+
y_ayamori(purple)
+職業+
IT系エンジニア
+すまい+
さいたま
y_ayamori(purple)
+職業+
IT系エンジニア
+すまい+
さいたま
使い方をすぐに忘れてググるんだけど案外、求める答えがないので記録しておきますね。
〆目的
ファイルBの中にファイルAに列記した文字列があるかどうかを確認し、あれば標準出力する
ファイルAは改行コードで区切られた文字列分探し出す。
〆ソースコード
------------------------------------------------------------
#!/bin/bash
file_a="./word.lst"
file_b="./text.txt"
while read line
do
awk -v str=$line '{if ($0 == str){print $0}}'
done < ${file_a}
------------------------------------------------------------
[-v]がミソ。
awk構文(シングルクォート内)でシェル変数を展開するのではなく、
awk構文に入る前にawk変数を定義してしまえば、エスケープの嵐にあわなくてすみます。
複数のシェル変数を渡す場合は[-v]を複数使えば実現できます。
〆目的
ファイルBの中にファイルAに列記した文字列があるかどうかを確認し、あれば標準出力する
ファイルAは改行コードで区切られた文字列分探し出す。
〆ソースコード
------------------------------------------------------------
#!/bin/bash
file_a="./word.lst"
file_b="./text.txt"
while read line
do
awk -v str=$line '{if ($0 == str){print $0}}'
done < ${file_a}
------------------------------------------------------------
[-v]がミソ。
awk構文(シングルクォート内)でシェル変数を展開するのではなく、
awk構文に入る前にawk変数を定義してしまえば、エスケープの嵐にあわなくてすみます。
複数のシェル変数を渡す場合は[-v]を複数使えば実現できます。
下記サイトが参考になりそうなので記述します。
goo.gl/zlKeo
でも今回調べたかったのはMySQLのサーババージョン。
上記のサイトではDBサーバにログインできてかつ、管理者権限が無いと難しそう。
また必ずしも接続先のサーバの情報とも言い切れない場合があります。
RPMとビルドパッケージが混在している環境です。
場数を踏んでくるとよくハマることなのでバージョン調査をする際は、地雷を踏まないようにしたいですね。
---------------------------------------
# mysql --version
---------------------------------------
で得られる情報は確かクライアントバージョンだったような気がします。
今回求めていたのはこっち
---------------------------------------
sql> SELECT VERSION();
---------------------------------------
From: goo.gl/hmEhY
goo.gl/zlKeo
でも今回調べたかったのはMySQLのサーババージョン。
上記のサイトではDBサーバにログインできてかつ、管理者権限が無いと難しそう。
また必ずしも接続先のサーバの情報とも言い切れない場合があります。
RPMとビルドパッケージが混在している環境です。
場数を踏んでくるとよくハマることなのでバージョン調査をする際は、地雷を踏まないようにしたいですね。
---------------------------------------
# mysql --version
---------------------------------------
で得られる情報は確かクライアントバージョンだったような気がします。
今回求めていたのはこっち
---------------------------------------
sql> SELECT VERSION();
---------------------------------------
From: goo.gl/hmEhY
昨日死にかけましたけど。。。
今日は復活しました。
われながら、回復力が早いと
で、シェルスクリプトで複数行コメントアウトする方法はないかしら?
とぐぐってみたら出てきたのがこれね。
http://d.hatena.ne.jp/shizu9/20080603/1212499174
なるほど、、
どんな引数を渡しても終了コード「0」を返す「:」に対して文字列を入れてしまうわけね。
これだとtrueコマンドやfalseコマンドでもいけそうね。
コメントアウトのオンオフを切り替えるシーンで複数行やることは少ないと思いますが、
リンク先では丁寧にその際の注意点も網羅されています。
嬉しいですね^^
今日は復活しました。
われながら、回復力が早いと
で、シェルスクリプトで複数行コメントアウトする方法はないかしら?
とぐぐってみたら出てきたのがこれね。
http://d.hatena.ne.jp/shizu9/20080603/1212499174
なるほど、、
どんな引数を渡しても終了コード「0」を返す「:」に対して文字列を入れてしまうわけね。
これだとtrueコマンドやfalseコマンドでもいけそうね。
コメントアウトのオンオフを切り替えるシーンで複数行やることは少ないと思いますが、
リンク先では丁寧にその際の注意点も網羅されています。
嬉しいですね^^
ちょっとだけ苦労したのでメモります。
参考サイト:
http://www.ne.jp/asahi/hishidama/home/tech/excel/vba/tips.html#MkDirs
------------------------------------------------------------
Sub MkDirs(ByRef path As String)
'存在していたら何もしない
If Dir(path, vbDirectory) <> "" Then Exit Sub
Dim n As Integer
n = InStrRev(path, "\")
If n >= 0 Then
Call MkDirs(Left$(path, n - 1))
End If
If Dir(path, vbDirectory) <> "" Then Exit Sub
MkDir path
End Sub
------------------------------------------------------------
私の環境ではそのままの使用では思った動作をしてくれなかったので赤文字を追加しました。
この赤文字は青文字のコピーです。
参考サイト:
http://www.ne.jp/asahi/hishidama/home/tech/excel/vba/tips.html#MkDirs
------------------------------------------------------------
Sub MkDirs(ByRef path As String)
'存在していたら何もしない
If Dir(path, vbDirectory) <> "" Then Exit Sub
Dim n As Integer
n = InStrRev(path, "\")
If n >= 0 Then
Call MkDirs(Left$(path, n - 1))
End If
If Dir(path, vbDirectory) <> "" Then Exit Sub
MkDir path
End Sub
------------------------------------------------------------
私の環境ではそのままの使用では思った動作をしてくれなかったので赤文字を追加しました。
この赤文字は青文字のコピーです。