【Shell】nlコマンドの使い方

nlコマンドを今日まで知らず、読めないshellがあったので

記録を残します。

 

今日分からなかった部分は以下のコマンド。

 

-------------------------------------------------------------------------------

nl -w10 -nrz -s "," ファイル名

-------------------------------------------------------------------------------

 

「nlコマンド」は指定したファイルを行番号付きで表示するものらしい。。

 

そして、それについていたオプションは3つあった。

 

-w10:行番号の幅を指定。

   10は10文字分のことみたい。

 

-nrz:行番号を右揃えで、余白を0で埋める。

   1行目は「0000000001」と行番号が表示された。

   「-nrn」だと行番号を右揃えで、余白は0で埋めない。

   「-nln」だと行番号を左揃えで、余白を0で埋めない。

 

-s ",":区切り文字を「,」と指定。

 

実際の実行結果は以下のとおりであった。

 

0000000001,1行目の文

0000000002,2行目の文

0000000003,3行目の文

 

今まで、行番号を表示する際は「catコマンド」で「-n」というオプションを

使用していたが、表示形式にこだわりたいときは「nlコマンド」を

使用すればいいのだと勝手に思いました。

 

いつになったら、ググらずにシェルを解読できるのか・・・

 

【Shell】特殊な変数について

shellを使う業務があったのですが、中身を読んで

分からない部分があったので、纏めようと思います。

 

というのも、何が読めなかったかというと

特殊変数が読めませんでした。。

 

----------------------------------------------------------------------------------

$?  シェルが最後に実行したコマンドの終了状態を表示する。

   直前のコマンドが上手くいくと、基本的に「0」を返却する模様・・

----------------------------------------------------------------------------------

$1 〜 $9  n番目の引数($1なら1つ目の引数)

      シェルは引数の数字が1から始まっているとは・・

----------------------------------------------------------------------------------

$#  シェルに渡された引数の数

   3つ引数があれば3

----------------------------------------------------------------------------------

$0  スクリプト

----------------------------------------------------------------------------------

 

シェルはまだまだ分からないことがたくさんありそうです。。。

 

【PowerShell】アップロードファイルの選択をできなかった話

PowerShellでアップロードファイルの選択をできなかったので

調べた内容を以下に記載します。

 

まず、やろうとしたのは対象のタグを検索し

valueに直接ファイルのフルパスを入力してしまうということ。

しかし、できなかった・・・

 

こんな感じ・・・

-------------------------------------------------------------------------------------------

#要素取得
$Elements =$doc.IHTMLDocument3_getElementById("任意のId")

#フルパスの入力
@($Elements)[0].value = "フルパス"

-------------------------------------------------------------------------------------------

 

続いて、やろうとしたことはダイアログを表示させ

sendkeysを用いて直接入力させようとしてみた。

 

こんな感じ・・・

-------------------------------------------------------------------------------------------

#要素取得
$Elements =$doc.IHTMLDocument3_getElementById("任意のId")

 

#ボタンクリック
$Elements.click()

 

#ダイアログにフルパスを入力

Add-Type -AssemblyName System.Windows.Forms

[System.Windows.Forms.SendKeys]::SendWait("フルパス")

-------------------------------------------------------------------------------------------

 

結局、調べたらIEのバージョンが上がったタイミングで

<input type="file">のものはセキュリティの問題から

直接入力ができなくなったようでした。。。

 

ということで、何時間もかけてできないことを確認しただけというお話。

 

【SQL】select文で大文字(小文字)を含むカラムのみを抽出する方法

今日、select文で大文字を含むカラムのみを抽出できず

だいぶ遠回りをしてしまったので、記録を残すことにします。

 

結果としては、以下のように検索すれば問題なさそうでした。

 

----------------------------------------------------------------------

select カラム名 from テーブル名

    where カラム名 != lower(カラム名)

----------------------------------------------------------------------

 

lower(カラム名)で大文字を小文字に変えるので

元のカラム名と同じ(=)にならなければカラムに

大文字が含まれるということでした。

 

というか、lowerというものを今日まで知らなかった・・・

 

ということで、小文字を含むカラムのみを抽出したければ

以下で検索すればいいということですね。

 

----------------------------------------------------------------------

select カラム名 from テーブル名

    where カラム名 != upper(カラム名)

----------------------------------------------------------------------

 

SQL文だけでみても、まだまだ知らないことがたくさんあります。

まだまだ勉強しなければ・・・

ブログ始めます

今日からブログを始めます。

内容は主に技術的な内容を記載していきます。

 

というのも、私は去年からエンジニアとして会社に入社しました。

年齢はアラサーですが、前職では営業をしており、未経験での採用のため

わからないことに日々直面します。

 

そのため、勉強したことが無駄にならないように、このブログに

自分がわからなかったことを書き留め、今後の自分に活かしていきたいと思います。

 

ちなみに、今のところJAVA、シェル、SQLLINUXコマンドについて

調べたことや使い方を記載していく予定です。