takau-0celtis’s diary

大学1年留年→卒業後ニート→2年フリーター→25歳ニート就活→25歳ニートIT企業に就職

シェルスクリプト〜if文で引数の有無判別

if文がなんか上手く動かなかったのだが解決した。

原因はシンプルにスペースのシンタックスエラー。バッチファイルもめんどいなぁと思ったがシェルスクリプトも中々めんどいな…

やりたかったことは第一引数がある時とない時の出力結果の条件分け。
if文の初歩。
以下、解決した手順。


  • 動かなかった例
if[-z $1]; then

おわかり頂けるだろうか…スペースを極限まで詰めていることが。
私はどの言語でもスペースを詰めて書くことに拘っていたのが、それが裏目に出た瞬間である。これはシェルスクリプトではシンタックスエラーとして扱われる

  • 動いたわ
if [ -z $1 ]; then

"if"と"["の間にスペース、
"["と演算子"-z"の間にスペース、
もちろん演算子"-z"と変数"$1"の間にはスペース(これは納得できる)、
変数"$1"と"]"の間にスペース…

これが正当な書式である。めんどくさいw
エラーも何言ってるかよくわからないし、つまずくかもって言われた理由が少しだけわかった。



以下、完成文。

  • こんな感じ
#!/bin/sh

if [ -z $1 ]; then
    echo "引数がありません"
    exit 99
fi

echo "入力された引数は$1です"

elseを使わない理由は、ネストすることを想定すると見づらくなっちゃうからみたい。
引数貰わなかったら特に何もしないプログラムなら、最初の方に判定して貰わないなら即終了させりゃええやんって先輩に言われた。
exitの戻り値はなんでもいいけど、現場で指定される場合があるんだって。
演算子は"-z"使うか"!"使うかは違いがわからないからとりあえずはスルーする。

そういえば就職をした

しばらく更新をサボっていた。申し訳ない。

誰に対して申し訳ないと思っているんだって話ではあるが、多分自分自身に対してである。

続いて誰に対しての報告かもわからないが、就職をした。絶賛研修中で、もう一ヶ月が経過したが、とても楽しいし就職して良かったと心から思っている。

 

 

最後の更新は5月25日の土曜日。この頃は多分、ア○ゾンの倉庫でひたすらバイトに明け暮れていた気がする。

バイトの日は5時に起きて始発のバスに乗り、8時からピッキング開始だっけなたしか。忘れた。

そして19時に終わり家に帰ってはゲーム。

バイトの日以外は家に篭ってひたすらゲーム。こんな毎日が続いた。

それが6月の中旬辺りから転機が訪れる。

 

f:id:takau_0celtis:20190812115641j:plain

右手首が腱鞘炎に…

なんと、右手首に腱鞘炎を患ってしまった。

本当に痛くて、初期の頃はスマホを持つことすらままならなかったのだ。

もはや私生活に支障が出るレベルだった。もちろんア○ゾン倉庫のバイトなんて無理に決まっていた。

致し方なく休暇を頂くことになった。そのため、私の財布は悲鳴を上げることになった。

だがそれでは生活すらままならないということで、ある程度回復したら出勤したのだ。しかし案の定、悪化した。

良くなったら出勤→悪化→出勤→悪化、、、という負のスパイラルを回し続けた結果、派遣会社の人から安静にということで出勤を止められた。

正確には、ア○ゾンの社員から出された。ア○ゾン倉庫の仕事はこういうところはクリーンで、怪我人は出勤させないとかさっさと帰らせるなど、仕事を強要させない点は素晴らしいと思った。

だが、一文無しでは私の生活が…

 

そこで、思い切ってア○ゾン倉庫のバイトを辞めた。腱鞘炎が治らない限りはどうしようもなかった。

なので派遣会社の人に、手首をあまり使わない仕事を紹介してもらった。

事務のアルバイト。しかも時給1200円で交通費全額支給。良案件だった。

ア○ゾンは交通費が出ないバイトだったため、これはありがたいと思った。そして早速面接に臨んだのだが…

 

交通費の支給は無いと前押しされた。おい話とちげぇじゃねぇか。

タウンワークにはガッツリ「交通費全額支給!」と書いてあったにも関わらず、それを指摘したら「他の案件とゴッチャになっているからなんたら〜」と誤魔化していた。これは確信犯だな、と思った。汚い手を使う。

面接の帰り道、どうしようかとショボくれていた。

期待のバイトは交通費支給なし。地元でバイトするのは気が引ける。当てがなくなってしまった。

そこで当時の私はふと思ったのだ。「今から新しいバイトを探すくらいなら、いっそのこと就活してやろう」と。断腸の思いの決断だった。

 

それから思い切ってタウンワークにてある会社に応募した。電車で移動中に。IT企業だ。

職種は恐らくSES。まぁ、IT企業ならどこでもいいやという安易な選択だった。スケジュールはすぐに固まり、面接の日程はその日中に決まった。

 

そして面接当日。面接と言いつつ質疑応答のようなものはほとんどなく、その日は適性検査を受けさせられた。論理とか計算、図形などの論理的思考力を求められるようなテストだった。

こういった形式のテストは久方ぶりで、だいぶ点を落とした。

結果は57/100。ボーダーは6割ということで、少し落ち込んだし、この会社も落ちるんだろうなと思った。

だが面接担当の人が「まぁ3点は誤差みたいなものですよね。もし良ければ次の選考に進むこともできますが、どうしますか?」という旨の、実質1次審査突破のお告げをもらった。

次の審査は実際に研修している人達と混じってJavaとかSQLの問題を解いたりするものだった。私が過去にやったことがある類のものだった。

もうやるしかないな、と思った。ここで変わろうとしなければ、一生ずるずるとニート・フリーターを続けるんだなと直感的に思ったのだ。

当たって砕けろの精神で私は次の選考へ進んだ。

 

続く。

水をこぼされてお怒りPC

先週の土曜日、パソコンに水を思いっきりこぼした。

かなり焦ったにも関わらず、水がキーボードの隙間を擦り落ちる光景を私はただ静かに見守っていた。

時の流れが一気に遅くなったように感じた。ただただ、その光景を見つめていたのだ。

水が完全にキーボードの隙間に入りきった後、呆然としてたさっきとは一転、スイッチを押されたように狼狽した。バカだ…

とにかく私はパソコンをひっくり返した。するとかなりの水が出てきた。軽く250mlはあっただろう。壊れない程度にパソコンを振るい水を出し切った。

そこで異様な音が聞こえることに気がついた。私のパソコンはかなり古いモデルのThinkPad。普段から小さな音は聞こえるのだが、今回の音はそれとは違った。「ゴオオオォォォ」と力強く鳴っているのだ。パソコンの悲鳴と言うよりは、パソコンの怒声のような音だった。我が身に異物が侵入してきたパソコンは、お怒りだったのだ。

まずい、ショートするかもと思った。私は慌てて電源を切った。

 

それから少し落ち着いて、googleで「パソコン 水 こぼした」と片言の外国人のような安直なワードで検索をかける。

するとどうやら、パソコンに水をぶちまけた同士がたくさんいることがわかり、ちょっと安心した。

中にはジュースやコーヒーをこぼした気の毒な人もいるようで、ただの真水をこぼした私は幾分楽だろうと思った。

 

参照したサイトはいくつかあったが、サイトで言っていることは大体一緒で、「新聞紙やキッチンペーパーに水を吸わせる」とか、「風通しが良い場所に数日置いておく」等、とにかく乾燥に務めることだった。

しかし中でも気になったサイトがあった。

 

ekishousyuuri.com

 

パソコンやスマホタブレットを専門にしている修理店の記事。ここには、安易に乾燥剤を使ってはいけない等々書いてあった。

一時的には復活するだろうが、長期的に使っていくとなると難しい、

中途半端に乾燥をさせてしまうと、内部で水がついた部分が腐敗していく、

やはり、専門の業者に修理に出して、中を分解してもらう方が安全、

などなど。

 

うーん…信憑性は高いだろうけど、金ないしなぁ…と思った貧乏人な私。もはや、業者の考えを受け入れる余裕などなかった。

その日は友人と遊ぶ予定だったので、車でドラッグストアへ連れて行ってもらう。

そこで一番安い乾燥剤を手に取り、ついでにトイレットペーパーも買う。

会計の際申し訳無さそうに、「大きい袋ください」と言った。大抵のドラッグストアでは、取っ手がついているトイレットペーパーのような商品でも入る大きな袋が用意されている。本命はこれだ。

トイレットペーパーはこの大きい袋を手に入れるチケットのようなものだった。

以前ドラッグストアでバイトをしている際、ペーパー入る袋くださいという客が結構多かった。いや、取っ手あるんだからそれ持てや、資源の無駄、なんて否定的に思っていたが、まさか私がその袋に頼る日が来ようとは思わなかった。

 

それから自宅に帰り、パソコンの画面とキーボードの間に乾燥剤をはさみ、巨大な袋にぶち込んで密閉した。

それから一週間後…

無事直った!

キーボードもすべて動作確認、異常なし!

内部のことなんか知らない!

どうせ古いパソコンだし、いや一応大川から譲り受けた代物ではあるけど…

壊れたら新しいの買う。