信頼はずっと、挑戦はもっと。

お問い合わせ
TEL:03-3496-3888

BLOG コアテックの社員ブログ (毎週月曜~金曜更新中)

LIST OF ARTICLES

記事一覧

  • テクログ

    windows10 再セットアップ 復習

    先日windows10の再インストールを行った時の事です。windowsが起動している状態だったので普通にメニューから「このPCを初期状態に戻す」を選択したのですが、終わった後に初期セットアップに進むはずですが、エラーが出て一向に先に進みません。このエラーと言うのが、LANに繋いで更新すれば先に進むという感じでしたがLANケーブルを挿しても全く変わらず。何度再起動しても同じエラーがでて先に進む事ができませんでした。この時の失敗したかなと思ったポイントとしては1 更新とセキュリティから再インストールを選択していなかった※shiftを押しながら再起動から再インストールを選択した2 全てのドライブを選択していなかったリカバリ領域まで削除されると思いwindowsがインストールされているドライブのみを選択した1に関してはおそらく問題がないと思われます。各メーカーさんのHPでもその手順を紹介している物もあるのでどちらから入っても問題がないと思われます。2に関しては全てのドライブを削除するので時間がかかると思い選択しなかったので、問題があるとすればコチラかなと思う所です。結局ディスクから再インストールを行い無事に起動しました。起動後に次は別の手順でやり直してみた所問題なくインストールが完了しました。楽なのはHDDリカバリですが、メディアを使ったやり方に慣れている人ならば慣れている分失敗しにくいのではないかと思います。※各メーカーによって若干表記等が違う場合があります。
  • テクログ

    素敵だら! Linux コマンド ~基本編 その2~

    こんにちはうなぎです。IT開発者にとって避けては通れない数ある Linux コマンドのうちから、厳選してご紹介する不定期コーナー“素敵だら! Linux コマンド”。今回は前回に引き続き「~基本編 その2~」です。echocatrm■echo言わずと知れた文字列出力コマンド `echo` です。`echo` の後に続いて文字列を入力することで、その文字列をそのまま出力してくれます。だから echo(やまびこ)というわけですね。`echo` 自体は多機能ということはありませんが、なくてはならない存在です。主にメッセージの表示に使用され、変数も展開して表示することができるのでスクリプト内で多用されます。知っておくべきオプションとしては `e` オプションで、エスケープシーケンスを解釈して出力してくれます。echo -e 'hogehoge\npuyopuyo' ※クォーテーションで文字列を囲まない場合は「hoge\\npuyo」のようにエスケープシーケンスにバックスラッシュ「\」を2つ付けますそのほかしばしば利用されるのが、ファイルに文字列を上書きまたは追加で書き込みたい時です。リダイレクトの `>` または `>>` を使用して `echo` による画面への出力(標準出力といいます)をファイルへの出力に変換します。・上書き(または新規作成)echo hogehoge > file ・追加echo hogehoge >> file もちろん `e` オプションを使用して文字の途中に改行を入れることもできます。■cat`cat` は concatenate (連結)のことで、ファイルとファイルを連結した結果を標準出力します。`echo` と同様にリダイレクトを使用することで、連結した結果をファイルに出力することもできます。指定するファイルは1つでもよく、その場合ファイル内容が出力されるだけになるので、ファイルの閲覧にもしばしば使用されます。結合してファイルに出力※指定するファイルはいくつでもよいcat hoge.txt piyo.txt > file.txt hoge.txt の内容を出力して閲覧cat hoge.txt またヒアドキュメントを用いることで、`echo` ではできなかった複数行の文字列を出力することもできます。・ヒアドキュメントで標準出力cat << EOS hogehgoe piyopiyo EOS ・ヒアドキュメントでファイル出力cat << EOS > file.txt hogehgoe piyopiyo EOS ■rm`rm` はファイルとディレクトリの削除コマンドです。rm file.txt のようにすることで指定したファイルを削除することができます。ディレクトリを削除するときは `r` オプションをつけて再帰的に(recursive)削除する必要があります。その時にはディレクトリ内のファイルも併せて削除されます。rm -r dir 削除したいファイルが複数ある場合、一つずつ指定することもできますが、ワイルドカードを使用することで一気に削除することができます。例えばディレクトリ test にファイル hoge1, hoge2, piyo3 が存在し、ファイルのみ全て削除したいときにはrm test/* hoge とファイル名のついたファイルのみ全て削除したいときはrm test/hoge* とすることで実現できます。`rm` によってファイルを削除するとき、環境にもよりますが、誤った削除を避けるためファイルを削除する毎に確認のプロンプトが表示され、y キーと Enter キーを押下することで削除が実行されます。しかし削除対象のファイルが多数ある場合、一つ一つ削除するごとに確認するのは骨が折れます。そのようなときには強制的に削除するオプション `f` が利用できます。使用には注意が必要で、バックアップを取っていない環境やレビューを通っていない作業である場合、基本的にやってはいけません。組織によっては、禁止していたり規則を設けているところもあるかもしれません。ひとつパスやファイル名を間違えただけで、削除してはいけないファイルが抹消され、大規模な障害となることもあります。なかでも `r` オプションと組み合わせた強制再帰的削除はとても危険です。以前私の勤めていた会社の同僚が開発環境で以下のコマンドをroot ユーザーで実行してしまいました。rm -rf / これは Linux のシステムを含めまるごと削除してしまうコマンドです。ひとつの開発環境が消え去り、大きな損害を生むことになりました。上記コマンドを実行した動画がネットに投稿されていますので、興味のある方は探してみてください。または個人の仮想環境で試してみるのも良いと思います。以上、`echo`, 'cat', 'rm' のご紹介でした。
  • テクログ

    ブラウザテストフレームワークの5月でした

    ブラウザテストフレームワーク、使ってますか!単体テストもいいけど、やっぱりユーザが使って実際ちゃんと動作してるの?ってのが気になりますよね。最近はjsでいろいろやることも多いし、関連するところが動かなくなったり。(jsの単体テストやれって話もありますが)で、有償無償問わず、いろいろと見てみました。結構網羅したり、試したりするだけでもそれなりにかかったので、なんとなく一覧的に。・いわゆるツールでの自動テスト系teststudioRanorexAutifyTestCompleteUnified Functional TestingROBOWAREuipathkatalon studioimacros・いわゆるブラウザテストフレームワーク(E2Eテスト用)Seleniumを直使用CodeceptionCodeceptJSNightwatch.jsWebdriverIOScrapywatirAppiumSelenideGebおよびSpockCapybaraSplinterCasperJSSST (selenium-simple-test)重要視した点としては、パッとつくれて、パッと動かせる。なんだこれ、どうやるんだ、みたいなのはなし。……ということで、有償の自動テストツール系について、可能なものは体験版を入れてちょっと動かしたりしました。「ちょっと」なのはあえてちょっとだけやって、それでもできないのならば簡単じゃない!ということでした。もちろんデモや動画をみてると、「なんかすごいことやってるし、なんでもできそう…」となりますし、実際理解すればなんでもできるのかもしれません。でも少しだけいじっただけでは全く思ったとおりに動かないんですよね。というわけでツール系はなくなり、ブラウザテストフレームワークの検証となりました。テストコード書かないといけない、というのは確かに手軽とはいえないですが、サンプルがあればあとはその改良をつづけていけばなんとかなる、という思惑です。現状のサポート具合、活発さ、書きやすさ…などからCodeceptionCodeceptJSが残り、mac,PCでのブラウザテストはクリア。実機もやりたい、ということでAppium連携をしたり…ということをやっていましたよ。実機動作は結構コツが必要だったり、iPhoneだとやりたいことがどうしてもできない部分があったり…となりましたが、それ以外は結構思ったとおりのテストができましたので、毎回確認しないといけない動作がある、とか、そういった場合には役に立つのではないでしょうか。一個小ネタでいえば、テストをAWS Lambdaに連携させて、外への影響を確認したりする、ということもやってみました。純粋なE2Eテストの範疇からは外れるかとは思いますが、やはりどうしても確認したい内容もありますので、そういうものもいかがでしょう。ちなみに最終的に残ったのはCodeceptJS+Appiumでした!(以下イメージ画像
  • テクログ

    元号変更

    元号が変わっている最中はGW中ということで関連会社は全て休み。そしてGW明けのて1週間で何かしらエラーが起きるかなと思っていたが意外と起こらない。何も起こらないとは予想していたので特にあわてる事はなかったが、今日になって1件だけ。使用しているソフトの開発元がそのタイミングで変更処理を行ったためアクセス出来なくなったとの事。予想外だったのは連休明けのタイミングがほぼ全ての企業が同じだったからだと思うが幾つかの法人でネットがかなり遅くなった事。10日間で溜まった仕事をみんな一気に片付ける為なのか基地局にデータが集中していたのが原因かと思われる。実際連休明けての数日で速度は戻ってきた。ルーターの再起動で基地局の変更がかかりたまたま空いている基地局に繋がったからかもしれない。同じビル内でも今まで通りという法人もあれば遅くなったと言う法人もあったのでおそらく上記が原因だと思われる。
  • テクログ

    素敵だら! Linux コマンド ~基本編~

    こんにちはうなぎです。IT開発者にとって避けては通れない数ある Linux コマンドのうちから、厳選してご紹介する不定期コーナー“素敵だら! Linux コマンド”。本日は「~基本編~」。基本的かつ必要不可欠となるコマンドです。lscdcp■ ls`ls` は指定されたディレクトリにあるディレクトリ・ファイルの情報を出力するコマンドです。オプションに `ls -la` などとすれば、隠しファイル、カレントリ・親ディレクトリを含む全てのディレクトリ・ファイル(`-a`)を詳細な(`-l` )情報とともに出力することができます。オプション `-la` は便利なので、しばしば `l` や `ls` のエイリアスに設定されることもあります。`-la` しか普段使いされないといってもよいほどですが、もちろんオプションはそれだけではありません。`-h` `--human-readable` はファイルサイズの単位を 4096 であれば 4.0K のように読みやすい形で出力してくれます。`-m` はリスト対象をカンマ区切りで出力してくれます。などなど、ほかにも意外と便利なオプションが揃っています。また、他のコマンドと組み合わせて使われることもあります。例えばカレントリディレクトリ内にあるファイル数を知りたい場合はls -A | wc -l などとすることで、カレントリ・親ディレクトリを除く(`-A`)全てのディレクトリ・ファイルの数を集計(`wc -l`)できます。Linux には“パイプ”と呼ばれるものがあり、パイプはコマンド(プロセス)の出力を別のコマンド(プロセス)に入力することができ、上記のように縦線(|)で書き表されます。`ls` コマンドで出力した情報をこの“パイプ”機能によって他のコマンドに渡すことにより、より有用な情報を得ることができるわけです!■ cd`cd` はディレクトリを移動するためのコマンドです。オプションはあまりないので、しばしば使う小技をご紹介します。ホームディレクトリに移動するcd `cd` だけです。ホームディレクトリとは echo $HOME などとすると表示されるディレクトリで、ログイン直後は大体そのディレクトリに居ることになります。ひとつ前のディレクトリに戻るcd - ハイフン(`-`)をパスにすることで、ひとつ前に居たディレクトリに移動することができます。一つ前のコマンドで指定したディレクトリに移動するcd $_ `$_` は Bash の環境変数で、最後に実行したコマンドの引数が格納されています。例えばあるファイルの場所を確認するために `ls` コマンドを使用し、そのファイルが見つかったとします。次にそのディレクトリに移動したいものの、もう一度パスを指定するのが面倒ですよね?そんな時に上記のコマンドを実行することで、入力を省略することができます!※ Bash とは Linux OS を動かしているコア部分(カーネル)に処理を中継いでくれる、コマンドベースのインターフェースを持ったソフトウェアの一つです※ 他にも csh, ash, zsh などがあり、最近では fish が人気のようです`$_` 他、Bash の環境変数については以下を参照https://www.gnu.org/software/bash/manual/html_node/Special-Parameters.html■ cp`cp` はファイルやディレクトリをコピーするコマンドです。第一引数にコピー元、第二引数にコピー先を指定します。また、ディレクトリをコピーする時には、再帰コピーを示す `-R, -r, --recursive` のいずれかのオプションをつける必要があります。他にもコピー先が既に存在していた場合に強制上書き(`-f`)したり、上書き時に確認をする(`-1`)オプションなどがあります。単純にディレクトリやファイルを別の場所にコピーする際に使用する他にも、例えば設定ファイルを編集する前にバックアップを取っておきたいときなどは、cp file{,.back} とすると便利です。上記ではコピー先となる第二引数を省略し、コピー元のファイル名に `{,.back}` を付け加えています。こうすることで結果、実行したディレクトリでは file.back が生成されます。わざわざ第二引数を指定しなくて済むわけです!この `{}` は“ブレース展開”というもので、cp コマンドに限ったものではなく、例えば ファイルを移動する・ファイル名を変更する際に使用する `mv` では、mv file{,.old} とすることで、ちょっと名前を変えてファイルを置いておくこともできます。“ブレース展開”は他にも一度に複数のファイルを指定したりできるなど面白い機能ですが、今回は割愛します。`{}` については以下を参照https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html以上少ないですが、`ls`, 'cp', 'mv' のご紹介でした。
  • テクログ

    HPを開くのに時間がかかる、または開きが悪い時

    外部にpingを送ると数%損失が出ていたので調べてみた。ルーター自体は接続中になっており他のPCでもネットが繋がるのでルーターが原因で切れてはいないよう。とりあえず各当PCを見るが特に変わった設定もしていないし、ファイヤーウォールが原因で切れているようでもない。以前ネットで見たIPv6を使わない設定にすると通信が安定するとあったので復習の意味も込めて試す事に。1 ネットワーク接続からローカルエリア接続を右クリックでプロパティ。2 インターネットプロトコルバージョン6のチェックを外す昔はこれでOKと言う記事があったがさらに必要な作業もあるとのことで以下も試してみました。3 構成ボタンを押し、TCP チェックサムオフロード(IPv6)UDPチェックサムオフロード(IPv6)一括送信オフロード v2(IPv6)上記項目を無効にしてOKボタン。その後同じようにpingを送ると損失が明らかになくなった。処理をする前は300の内15%位が損失になっていたのでかなり効果があった結果になりました。