タグ

ブックマーク / ascii.jp (111)

  • WindowsのコマンドでLAN内のデバイスを探す (1/2)

    自宅のネットワークなどで、接続しているPCを全部見つけたいことがある。エクスプローラーのネットワークから見つけることもできるが、スクリプトなどで処理したい場合に手入力するのは面倒だ。そんなときには、PowerShellのGet-NetNeighborコマンドが利用できる。 PowerShellのGet-NetNeighborコマンドは、ネットワーク内の通信により得たIPアドレスを出力できる。ただし、大量の出力があるので、不要なものを排除する必要がある Get-NetNeighborでアクセス可能なIPアドレスを探す LAN内のネットワークノードを探すのは面倒な処理だ。たとえば、クラスCのプライベートネットワークならノード数は多くても254個なので、すべてのアドレスに対して、Pingコマンドを実行して応答の有無でノードの存在を確認することも不可能ではない。しかし、実際にスクリプトを書くとなる

    WindowsのコマンドでLAN内のデバイスを探す (1/2)
  • Windows Terminalのコマンドラインを極める (1/2)

    Windows Terminalの-wオプションを使えば、コマンドラインから、同一ウィンドウのタブ内、別ウィンドウなどで任意のコマンドを実行させることが可能になる。うまく利用すると、コマンドラインの使い勝手が大きく変わる Windows Terminalは、UWPではあるが、wt.exeという「アプリ実行エイリアス」を使って、Win32コンソールアプリケーションのように扱うことができる。また、Ver.1.7からは、Windows Terminalのウィンドウを指定して起動コマンドを実行させることが可能になった。このあたりについては過去記事を参考にされたい。 ●コマンドラインからウィンドウの制御が可能になったWindows Terminal v1.7 https://ascii.jp/elem/000/004/049/4049105/ とりあえずは最新の安定版(Ver.1.9)、プレビュー版

    Windows Terminalのコマンドラインを極める (1/2)
  • BOMなしUTF-8によってWindowsでもたらされる困惑 (1/2)

    かつてWindowsでテキストファイルといえばシフトJIS形式のものが大半だった。しかし最近では、UTF-8形式のテキストファイルも普通に見かけるようになってきた。世の中はUTF-8が主流になりつつあると言っていいだろう。 しかし、WindowsUTF-8を使うと、ちょっと困ったことがある。それは、エクスプローラーの検索欄などで用いるWindows Searchが、UTF-8にはしっかり対応していないのである。正確に言うと、Windows Searchはファイル先頭に「BOM」のあるUTF-8は認識して正確にインデックス化し、ファイルの全文検索が可能になるが、BOMのないUTF-8では正しくインデックス化できず、ファイルの全文検索はASCIIコードのみ可能で、日語などの非ASCII文字では全文検索ができない。 同じ内容のテキストをUTF-8UTF-8 BOM付き、UTF-16ビッグエ

    BOMなしUTF-8によってWindowsでもたらされる困惑 (1/2)
  • Windows 10は好きな文章を合成音声で簡単に喋らせることができる (1/2)

    こんな簡単なコマンドで、Windowsは「しゃべって」くれる。画面キャプチャーでは声をお聞かせすることはできないが、お手元のWindows PowerShellで試してほしい スクリプトを作るとき、ちょっとユーザーの気を引きたくなることがある。たとえば、少し時間のかかる処理をするときに、終わったことを通知したい場合などだ。あるいは、実行後にすこし時間が経過してからエラーを通知するような場合にも、気を引きたくなることがある。 こんなとき昔のコンピューターならベル音やビープ音を鳴らすのが一般的だった。端末装置からコンピューターを使っていた頃、Ctrl+Gを出力するとベル音が鳴った。マイクロプロセッサが使われ始め、パソコンの原型ができあがった頃、BEEPと呼ばれる機能ができた。プログラムでビットをオンオフし、これをスピーカーに接続することで音を出していた。今もマザーボード上には、そのための小さな

    Windows 10は好きな文章を合成音声で簡単に喋らせることができる (1/2)
  • Windows 10で無料で使える、デスクトップ操作の自動化ツール「Power Automate Desktop」を試す (1/2)

    Power Automate Desktopが無料で利用可能に ただし、用語の使い方には混乱もある 3月にWindows 10で「Power Automate Desktop」(以下、PADと略す)が、無料で利用できるようになることが発表された。PADは、ローカルコンピューターの上で動作する、アプリケーション操作の自動化ツールである。簡単に言えば、ユーザーが手で操作しているWindowsアプリケーションやウェブブラウザーを自動で操作するためのツールだ。 基的には、アプリなどを操作するための「フロー」を作成し、これを実行することで自動化できる。プログラミング経験のある人向けにいえば、「Excelマクロ」や「GUI版のBatchファイル」であり、フローはスクリプト言語である。 一応、プログラミングの知識がなくても、人がする操作を記録して「フロー」と呼ばれるプログラム(スクリプト、あるいはマク

    Windows 10で無料で使える、デスクトップ操作の自動化ツール「Power Automate Desktop」を試す (1/2)
  • PowerShellを“いい子”に改造して、WSLから“推し変”した

    WSLを使ってCドライブ上のファイルを実行するとどうしても遅くなってしまうことを知り、PowerShellに”推し変”しようと決意しました。とはいえ、デフォルトのPowerShellは個人的には使いづらく感じてしまい推せる気がしなかったので、PowerShellを自分好みの”いい子”にして推す方法を選びました。 想定している対象読者 ・WSLと最近うまくいっていない方 ・PowerShellと仲良くなれない方 ・PowerShellと仲は良いけど、もっと仲良くなりたい方 とりあえず環境構築 1.Windows Terminalのインストール インストールはこちらから 2.必要なフォントのインストール こちらからCascadia Code PLまたはCascadia Mono PLをインストールして、Windows Terminalフォントとして設定する必要があります。設定はWindows

    PowerShellを“いい子”に改造して、WSLから“推し変”した
  • Windowsのパス区切り文字は、なぜ逆スラッシュになったのか?

    MS-DOS 2.0のソースコードが公開された 9月末にMS-DOS 2.0のソースコード(https://github.com/Microsoft/MS-DOS/tree/master/v2.0)が公開された。ここでは、ソースコードを見ながら、Windowsのパス区切り文字が、なぜ「\」(英語表示では逆スラッシュ)になったのかを考えてみる。 ただ、MS-DOSは8086のアセンブラで記述されているため、コードを説明するのではなく、必要な定義部分などを使って解説することにする。 まずは簡単にMS-DOSという名称について説明しておく。IBMがIBM PC用のOSとしてマイクロソフトに開発を依頼したため、IBM PC用のものはPC-DOSという名称であり、MS-DOSはIBM以外のメーカー用に使われた。この時点では、PC-DOSとMS-DOSはほぼ同一のものとしてよい。ここでは、すべてMS-

    Windowsのパス区切り文字は、なぜ逆スラッシュになったのか?
  • Windows 10までほとんど手が入れられてこなかったWindowsのコンソール機能

    64bitWindowsでは16bitのDOSアプリは動かなくなったが 32bitのコンソールアプリは動作可能 「コマンドプロンプト」や「WSL」(Windows Susbsytem for Linux)を使う場合に利用するのが「コンソール」ウィンドウだ。このコンソールウィンドウは、テキスト主体のアプリケーションを実行する環境である。 Windowsでは、その祖先にあたるMS-DOSのアプリケーションをサポートするためにコンソールウィンドウが作られ、Windows XPまでは、16bitアプリケーションとしてMS-DOSアプリを動作できた。64bit版のVistaからは16bitアプリケーションのサポートはなくなったが、32bitのコンソールアプリケーションは実行できる。 もともとコンソールとは、ハードウェアとして、テキストの表示とキーボードからの入力をサポートしたもので、OSの支援など

    Windows 10までほとんど手が入れられてこなかったWindowsのコンソール機能
  • Gmail+自動化サービスで家族に居場所を知らせる

    Gmailをメインの登録先や連絡手段として使っているユーザーは多いかと思いますが、ちょっと設定を加えるだけでさらに便利になります。ライターの島徹さんが日常生活でも役立つGmailのTipsをご紹介。 指定範囲に入った自分や子どもの到着を Gmailで自動で知らせる設定 家族間やビジネスでのコミュニケーションで、ときどき自分の居場所を自動通知できると便利だと感じるシーンがあるのではないでしょうか。ただし、家族や他人が位置情報を取得する監視サービスを使うと、個人のプライバシーという観点で不都合なこともあります。 ですが、最寄り駅や職場、自宅周辺に到着した際のみGmailなどで通知するといったゆるめの条件なら、位置情報の通知を使ってみたいという方も多いかもしれません。 今回は前回記事と同様、Yahoo! JAPANの自動化サービス「myThings」(無料)を使って、指定した位置への出入りをGm

    Gmail+自動化サービスで家族に居場所を知らせる
  • はじめよう「Q#」で量子コンピューティング (1/2)

    マイクロソフトは2017年9月の「Ignite 2017」で、量子ゲート方式を採用した量子コンピュータの開発を進めていることを明らかにし、併せてVisual Studioで使える量子ゲート方式の量子コンピュータ向けプログラミング言語「Q#」を発表しました。12月には、Q#を使って量子コンピューティングを行うための開発キット(Quantum Development Kit)の無償提供を開始しています。 この開発キットには、Q#言語とコンパイラー、ライブラリのほか、皆様がお使いのx64 Windows PCでデバッグできる量子コンピュータのシミュレータ、Visual Studio 2017をQ#用に整備する拡張機能が含まれています。 今回は、この開発キットを使って、1.Q#開発環境を整備する手順、2.量子コンピューティングの手始めとなる「量子もつれを測定可能にする」手順を紹介します。 1.1

    はじめよう「Q#」で量子コンピューティング (1/2)
  • Windows 10の標準アプリをアンインストールする方法

    Windows 10の最新情報を常にウォッチしている探偵・ヤナギヤが、Windows 10にまつわるギモンに答える連載。 基技から裏技・神技、最新ビルドのInsider Previewの情報まで、ドド~ンと紹介します。 調査依頼 Windows 10の標準アプリをアンインストールする方法 アプリはスタートメニューの右クリックメニューなどから削除できる。しかし、標準アプリの中にはアンインストールできないものもある。そこまで容量は大きくないし、システムに負担をかけているわけではないが、使わないものがあるのは気持ちが悪い! というなら強制アンインストールできる。

    Windows 10の標準アプリをアンインストールする方法
  • Windows 10の動作が変になったら新機能「新たに開始」を試そう

    Windows 10の最新情報を常にウォッチしている探偵・ヤナギヤが、Windows 10にまつわるギモンに答える連載。 基技から裏技・神技、最新ビルドのInsider Previewの情報まで、ドド~ンと紹介します。 監視報告 Windows 10の動作が変になったら新機能「新たに開始」を試そう Windows 10 Creators Updateでは「新たに開始」という機能が追加された。Windows 10の設定や個人データを残しつつ、OSをクリーンインストールしてくれる。さらに、初期状態に戻すのではなく、Windows Updateが適用された状態でまっさらになるのですぐに利用できる。もちろん、万一のことがあるので「新たに開始」を試用する前にはファイルをバックアップすることをお勧めする。

    Windows 10の動作が変になったら新機能「新たに開始」を試そう
  • CanJSで初めて作る!GitHub連携のリアルタイムなToDoアプリ

    動きの早いJavaScriptフレームワークの世界で、長い歴史と実績を持つCanJSを知っていますか? その魅力を解説しながら、簡単なWebアプリを作成するチュートリアルをお届けします。夏休みの課題にどうぞ。 CanJSは、長期にわたってメンテナブルなWebアプリの作成に役立つ、革新的なフロントエンドライブラリーです。何十個もの独立したパッケージがあり、必要なライブラリーを選択できるため、100kb以上の依存オブジェクトに苦労することもなくなります。 CanJSはMVVM(モデル・ビュー・ビューモデル)構造です。以下の主要パッケージで成り立ちます。 can-component:カスタム要素作成 can-connect:APIとの通信 can-define:観察対象(observable) can-stache:Handlebars風のテンプレート このチュートリアルではGitHubリポジト

    CanJSで初めて作る!GitHub連携のリアルタイムなToDoアプリ
  • あなたが知らないJavaScriptの便利すぎるショートハンド19選

    日頃書いているJavaScriptをもっと短く書く方法を知っていますか? 目からうろこ、すぐに使えるJavaScriptのショードハンドを紹介します。 JavaScriptを使うすべての開発者に向けて、私が長年かけて身につけたJavaScriptのショートハンド(短縮記法)を資料にしました。コードの違いが分かるように通常の記述方法も併記しました。 1.三項演算子 if-else文を1行に収めた短縮記法です。 通常const x = 20; let answer; if (x > 10) { answer = 'is greater'; } else { answer = 'is lesser'; } ショートハンドconst answer = x > 10 ? 'is greater' : 'is lesser'; 従来のif文を1行に収めることも可能です。 const big = x >

    あなたが知らないJavaScriptの便利すぎるショートハンド19選
  • いまさら聞けない!npmのこれだけは知っておきたい基礎知識

    いまや Webフロントエンド開発に欠かせなくなったNode.js。併せて使うことが多いnpmの使い方を基礎から学びましょう。 Node.jsは、サーバーでJavaScriptアプリケーションが書けます。V8 JavaScriptランタイムで動作し、C++で書かれているため高速です。当初、アプリケーションにサーバー環境を提供する目的でしたが、ローカル環境のタスク自動化ツールとしても利用されています。Grunt、GulpWebpackなどのNode.jsをベースにしたツールによる新たなエコシステムは進化を続け、フロントエンド開発の形を変えるまでに至りました。 Node.jsのツールやパッケージインストールしたり管理したりする方法を、Node.jsのパッケージマネージャーであるnpmが担っています。npmには必要なパッケージをインストールするほか、パッケージを扱うための便利なインターフェイスが

    いまさら聞けない!npmのこれだけは知っておきたい基礎知識
  • Vue.jsとAxiosなら驚くほど簡単に作れる!外部APIを使ったWebアプリの実例

    ReactAngularと並び、ここのところ人気が高まっているVue.js。Axiosを組み合わせれば外部APIを使った Webアプリも手軽に開発できます。 JavaScriptのアプリケーションを作っていると、よくリモートソースからデータを取得したり、APIを使いたくなったりすると思います。最近、公開されているAPIを見ていたら、ソースからデータを取得して処理するのに良いものがたくさんあることに気付きました。 Vue.jsを使えば提供される機能を使ってアプリを構築し、数分のうちにコンテンツの配信を始められます。 ニューヨークタイムズのAPIからデータを取得して、その日のトップニュース記事を表示し、ユーザーが興味があるカテゴリのニュースを選びだせる簡単なニュースアプリの作り方を説明します。この記事の全コードはここにあります。 アプリの出来上がりは下の図のようになります。 この記事では、V

    Vue.jsとAxiosなら驚くほど簡単に作れる!外部APIを使ったWebアプリの実例
  • Go言語のメモリ管理

    ソフトウェアにとってメモリは不可欠です。 実行する命令も、メモリにロードしなければ実行できません。 ソースコードに書かれた定数値も、いったんメモリにロードしないと使えません。 関数を呼び出すにも、スタックと呼ばれるメモリ領域が必要です。 スタック以外に、ヒープと呼ばれるメモリ領域が必要なこともあります。 今回は、Go言語のプログラマーが作成するプログラムの下で、どのようにメモリが管理され利用されるかを探ります。 Go言語のメモリ管理というとガベージコレクターの話を思い起こすかもしれませんが、ガベージコレクターについては連載では取り上げません。 メモリ確保の旅 コンピューターに接続されている物理的なメモリチップが、どのような過程を経てプログラムで使われるのか、順番に見ていきましょう。 (1): カーネル 最近のオペレーティングシステムでは複数のプロセスを同時に実行できます。 それらのプロセ

    Go言語のメモリ管理
  • 実例で学ぶ、JavaScriptのテスト駆動開発 ファーストステップガイド

    「テスト駆動開発」という言葉は聞いたことがあっても、いきなりプロジェクトに持ち込むのは難しいもの。小さなJavaScriptプロジェクトを例に、テスト駆動開発に取り組む方法を紹介します。 自動テストとそのメリットについてはよく知っていると思います。アプリケーションに対して一連のテストを用意しておけば、万が一なにかを壊してしまってもテストで発見できるので安心してコードを変更できます。さらに一歩進んで、コードを書く前にテストをすることもできます。テスト駆動開発(Test-driven development: TDD)として知られる手法です。 この記事ではTDDについて、またTDDが開発者にもたらす恩恵について紹介します。そのあと、TDDを使ってフォームバリデーター(ユーザーによって入力された値が所定のルールセットに一致しているかどうかを確認する機能)を実装します。 TDDについて テスト駆

    実例で学ぶ、JavaScriptのテスト駆動開発 ファーストステップガイド
  • 【週末まとめ読み】JavaScriptのデバッグってどうしてる? ほか

    今週公開した記事の中から、この週末に読んでおきたい注目記事をまとめて紹介。今週は、JSのデバッグにNodeのデバッガーのススメ、人工知能APIまとめ、アイコンのA/Bテスト成功事例など、話題の記事を中心に8をセレクト。平日は忙しくてチェックできなかった人も、休日にゆっくりまとめ読みしてみては? 【今週の一番人気】 JSのデバッグにはconsole.log()ではなくNodeのデバッガーを使いなさい JavaScriptのデバッグに苦労しているなら、Nodeのデバッガーを試してみてはどうでしょうか。Visual Studio Codeならさらに手軽です。 【乗り遅れるな】 素人だってパーソナルアシスタントを作れる!人工知能APIまとめ【2017年版】 AIプログラミングの専門知識がないけど、アップルのSiriやアマゾンのAlexaのようなパーソナルアシスタントを作りたい開発者へ。手軽に試せ

    【週末まとめ読み】JavaScriptのデバッグってどうしてる? ほか
  • JSのデバッグにはconsole.log()ではなくNodeのデバッガーを使いなさい

    JavaScriptのデバッグに苦労しているなら、Nodeのデバッガーを試してみてはどうでしょうか。Visual Studio Codeならさらに手軽です。 袋小路です! 何時間も費やしていろいろ試してみたけれどもうまくいきません。コードをじっと吟味してもエラーになりそうなところはありません。2、3回ロジックを見直して、何度も実行しています。単体テストも助けにはならず、同じく失敗してしまいます。もはやどうしていいか分からず、虚空を見つめたくなります。ひとり闇の中にいるように感じて、だんだん腹が立ってきます。 こんなときの自然な反応は、コードの品質を落とし、邪魔なものを全部捨て去ることです。コードのあちこちにprintをちりばめて、なにかうまくいくことを祈るわけです。これでは暗闇で的を狙うようなもので、望み薄なことが分かるでしょう。 よくある話だと感じたのではないでしょうか。今までに数行以上

    JSのデバッグにはconsole.log()ではなくNodeのデバッガーを使いなさい