スキップしてメイン コンテンツに移動

投稿

ラベル(Tips)が付いた投稿を表示しています

git rm --cached {ファイル名}:ファイルをGitの管理対象から除外する

Gitから 特定のファイルを管理対象から除外するには、 git rm --cached {ファイル名} とします。 ディレクトリを除外するには、 -r オプションを付けて git rm --cached -r {ディレクトリ名} とします。 --cached オプションを付けないとファイルごと削除されるので注意してください。

自分のPCが所属しているActive DirectoryのWindows ドメインを調べる方法

Windows Power ShellかCommand Promptで下記のコマンドを実行すると自分のPCの所属しているActive DirectoryのWindowsドメインがわかります。 > systeminfo | findstr /B "Domain" Domain: WORKGROUP もしActive Directoryのドメインに参加していなければ、上記の例のように&quote;'Domain: WORKGROUP&quote;と表示されます。ドメインに参加していれば、&quote;WORKGROUP&quote;以外の文字列が表示されます。

コントロールパネルから不要なアイコンを削除

古いオーディオドライバーをアンインストールしたのですが、どういうわけかコントロールパネルにアイコンが残ったままになってしまいました。 実害はないので無理に削除する必要もありませんが、気になったので削除する方法を調べてみました。 蛇足ですが、消したかったのはサウンドカードのSE-90PCIを使うときにインストールしたEnvy 24関連のコントロールパネルのアイテムです。 Googleで検索すると下記の方法がみつかりました。 (方法1) レジストリエディタを使って項目を削除する タスクバーの検索ボックスから Regedit と入力してレジストリエディタを起動。 下記のキーを探す。 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace KEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace クリックして{Default}の欄を見ながら、消したいアイテムを探して削除。 (方法2) レジストリエディタを使って項目を隠す 今回はアイテムを削除したいので目的と合致しませんが、コントロールパネルからアイテムを隠すこともできるようです。 詳細は レジストリエディタを使う方法 を参照してください。 組織で管理しているパソコンの場合は、管理者がPolicyを設定して管理することもできるようです。 詳細は Windows 10 Enterpriseで管理者が実施する方法 を参照してください。 (方法3) cplファイルを削除する C:\Windows\System32 、 C:\Windows\SysWOW64 の各ディレクトリに対して、検索ボックスに .cpl と打ち込んでコントロールパネルの項目を抽出。1つずつファイルを見てそれっぽいものを削除する。 Windows標準のものがほとんどなので、いきなり削除するのではなく、対象と思われる.cplをディレクトリから移動して間違いないか確認してから削除する方が無難だと思います。 Windows標準のものは下記のものがあるので、下記のリストに含まれるもの...

Node.jsでローカルにインストールしたpackageからプログラムを実行する方法

Node.jsでローカルにインストールしたパッケージのプログラムを実行する方法の紹介です。 方法1: 直接パス指定 モジュールがインストールされたディレクトリ ./node_modules/.bin/ から直接指定。下記はeslintのバージョンを取得したい場合の例。 ./node_modules/.bin/eslint -v 方法2: package.jsonのscriptsセクションに設定して実行 下記はeslintのバージョンを取得したい場合の設定例。 { "name" : "Sample" , "description" : "Sample Project" , "scripts" : { "eslint-version" : "eslint -v" , } , 実行時はプロンプトで npm run {設定したscript名} と入力すればコマンドを実行することができます。上記の例の場合は下記のように入力すればOKです。 $ npm run eslint-version ちなみにデフォルトで設定されているscriptsは下記に記載されています。 https://docs.npmjs.com/cli/v7/using-npm/scripts

Windowsで特定のポートを使っているプロセスを強制終了

Windows上である特定のポートを使って立ち上げたサーバープロセスを強制終了する方法の紹介です。 ■ 方法 1) Windows PowerShellやCommand Promptを立ち上げます。必須ではありませんが、プロセスのKILLを実行するので、管理者権限で立ち上げるのが無難で す。 2) ポートで使用しているポート番号(<PORT>)のプロセスIDを検索します。 netstat -ano | findstr :<PORT> 3) 得られたプロセスIDを指定(<PID>の部分)して、そのプロセスをKILLします。 taskkill /PID <PID> /F ■ 実際の例 例えば49668ポートで検索した場合、下記のような結果が出力されます。 PS C:\Windows\system32> netstat -ano | findstr :49668 TCP 0.0.0.0:49668 0.0.0.0:0 LISTENING 3932 TCP [::]:49668 [::]:0 LISTENING 3932 上記の例の場合のプロセスIDは「3932」になるので、下記のようにコマンドを実行すれば、当該のプロセスがKILLされます。 taskkill /PID 3932 /F ちなみに複数のプロセスIDを指定してKILLすることもできます。 taskkill /PID 14328 /PID 8156 /PID 6864 /F

エラーコード0x80070002でWindows Updateが進まない問題

0x80070002エラー Windows Updateを実行していたのですが、何度実行しても「エラーコード0x80070002」のエラーが発生してインストールに失敗するようになってしまいました。 下記のページに載っていた情報をもとに色々試したのですが、最終的に筆者の環境では、 ソフトウェア配布フォルダーの削除 を実施して解決しました。 https://freesoft.tvbok.com/tips/update_error_code/0x80070002.html https://www.cyclonis.com/ja/how-to-fix-error-code-0x80070002/ 「マイコンピュータ」に移動。 「C:\ Windows」フォルダーに移動。 SoftwareDistribution という名前のフォルダを検索して、念のため、フォルダの名前を SoftwareDistributionBackup などに変更してバックアップ。 SoftwareDistribution フォルダ削除。 PCを再起動し、Windows UpdateにアクセスしてPCを更新。 補足 ちなみにWindows Updateで0x80070002のエラーが発生している場合、Microsoft Storeで新しいアプリをインストールしようとしてGetボタンを押しても反応がなくなり、Microsoft Storeからアプリをインストールできなくなるようです。 筆者の場合は、下記のような流れで解決しました。 1) Microsoft Storeで新しいアプリをインストールできなきなくなる ↓ 2) Windows Updateの失敗していることが原因と判明 ↓ 3) Windows Updateが0x80070002エラーで失敗していることが判明 ↓ 4) Windows Updateが0x80070002エラーをこの記事に書いた方法で解決して、Windows Updateを完了させる ↓ 5) Microsoft Storeで新しいアプリをインストール成功となり、無事すべての問題解決!

NetBeansが「invalid jdkhome specified」エラーで起動しな場合の対処法

Windows 10のPCでJavaのバージョンを入れ替えた後、NetBeansを起動しようとしたのですが、「invalid jdkhome specified」「Cannot find java 1.8 or higher」というエラーが派生して、NetBeansが起動しなくなってしまいました。 環境変数のJAVA_HOMEが原因かとも思いましたが、筆者の環境で使用している C:\Program Files\AdoptOpenJDK\jdk-8.0.292.10-hotspot\ が正しく設定されていました。 調査したところ、原因は C:\Program Files\NetBeans-12.0\netbeans\etc\netbeans.conf 内の netbeans_jdkhome の設定でした。 netbeans.conf にインストールしてあるJDKを指定して、無事起動するようになりました(下記は筆者の例ですので、各人の環境にインストールしてあるJDKを指定してください)。 netbeans_jdkhome="C:\Program Files\AdoptOpenJDK\jdk-8.0.292.10-hotspot" 編集時の注意点としては、Administrator権限でファイルを編集する必要があります。 Windowsの検索ボックスで「Command Prompt」を検索。 検索結果に出てきた「Command Prompt」プログラムを右クリックして、「Run as administrator」でプログラムを起動。 cd "C:\Program Files\NetBeans-12.0\netbeans\etc" のようにインストールしてあるNetBeansのetcディレクトリへ移動。 notepad netbeans.conf と入力してnotepadを起動。 notepadで netbeans_jdkhome のエントリを探して使いたいJDKのホームディレクトリを指定して、ファイルを保存。 筆者は、最初Administrator権限ではなく、普通のユーザで直接netbeans.confを編集してしまい、変更が反映されずにしばらく原因を探るのに時間がかかってしましました。

WSLを利用している各アプリケーションのWSLのバージョンを確認する方法

WSL (Windows Subsystem for Linux)は、WSL 2からIOパフォーマンスなどが向上していますので、基本的にはWSL 2を使う方がおすすめです。 WSL 2は、下記のMicrosoftの公式ドキュメントの通り設定すれば、簡単にセットアップできます。 Install WSL on Windows 10 | Microsoft Docs すでにWSLを使っている場合に、各アプリケーションが利用しているWSLのバージョンを確認したいこともあると思いますが、その場合はPowerShellなどで、 wsl -l -v と実行すればOKです。 PS C:\> wsl -l -v NAME STATE VERSION * docker-desktop Stopped 2 docker-desktop-data Stopped 2 Ubuntu-20.04 Stopped 2 上記の実行例では、docker-desktopやUbuntu-20.04がすべて、Version 2 (=WSL2)を利用していることがわかります。

PhpStormのTerminalでGit Bashを利用した際にSymfonyコマンドの出力のANSI color codeが正しく色付けされるようにする方法

WindowsのPhpStormのTerminalでGit Bashを設定して、利用していたのですが、Terminal内のSymfonyのコマンドの実行結果で色付けして表示されるべき部分がANSIのカラーコードのまま表示されてしまうという問題に遭遇したので、解決法のメモです。 元の設定 Settings > Tools > Terminal内のShell pathのところに単純にGit Bashのパス "C:\Program Files\Git\bin\sh.exe" と入力していました。 この設定でターミナルからSymfonyのコマンドを実行すると、出力結果は下記のようになり、色付けが正しくされていませんでした。 文字列をそのまま貼り付けると下記のような感じ。。。 $ symfony ? [ 30 ; 43mWARNING? [ 39 ; 49m A new version is available ( ? [ 32m4.25.4? [ 39m, currently running ? [ 32mv4.25.2? [ 39m ) . ? [ 32mConsider upgrading soon using:? [ 39m symfony self:update ? [ 32mSymfony CLI? [ 39m version ? [ 33mv4.25.2? [ 39m ( c ) 2017-2021 Symfony SAS Symfony CLI helps developers manage projects, from local code to remote infrastructure 解決法 色々格闘していたろころ、下記の記事を見つけてようやく解決しました。 https://stackoverflow.com/questions/39172301/ansi-color-codes-in-phpstorm-console ANSICONというプログラムをダウンロードして、適当な場所に配置。 https://github.com/adoxa/ansicon/releases Settings > Tools > Terminal内のShell pat...

Firebase Toolsコマンドが実行ポリシーの設定が原因で実行できない問題の解決法

Firebase ToolsをインストールしてWindows PowerShell上からfirebaseコマンドを実行したのですが、下記の実行ポリシー関連のエラーが発生して正常に実行できませんでした。 PS C:\\Users\\user > firebase firebase : File C:\\Users\\user\\AppData\\Roaming\\npm\\firebase.ps1 cannot be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID = 135170. At line:1 char:1 + firebase + ~~~~~~~~ + CategoryInfo : SecurityError: ( : ) [ ] , PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess このあたりを参考に https://tecadmin.net/powershell-running-scripts-is-disabled-system/ 、管理者(Administrator)権限でPowerShellを開き、下記のコマンドを実行して解決しました。 PS C:\\Users\\user > Set-ExecutionPolicy RemoteSigned

Webのフロント側でもとのfirebaseの初期設定をコピーして新しいfirebaseインスタンスを作成する方法

frontendのWeb側で、 firebase.app().options を利用して、もとのfirebaseインスタンスと同じ設定のインスタンスを作成する方法の紹介です。 firebase.app().options の中身をJSON形式で表示させると、下記のように、firebaseのインスタンスの初期化時のoptionsが取得できます。 { "projectId" : "project_id" , "appId" : "1:XXXXXXXXXXXX:web:XXXXXXXXXXXXXXXXXXX" , "storageBucket" : "project_id.appspot.com" , "locationId" : "asia-northeast1" , "apiKey" : "XXXXXXXXXXXXXXXXXXXXXX" , "authDomain" : "project_id.firebaseapp.com" , "messagingSenderId" : "11111111111111" , "measurementId" : "G-XXXXXXXX" } この firebase.app().options をそのままfirebase.initializeAppの引数に渡すことで、もとのfirebaseインスタンスと同じ設定のインスタンスを作成することができます。 const newFirebase = firebase . initializeApp ( firebase . app ( ) . options , 'newFirebaseApp' ) ;

FirebaseのEmulatorを利用する際にJavaをインストール

Firebaseのエミュレータ起動に失敗 Windows環境で firebase emulators:start コマンドを実行してFirebaseのエミュレータを起動しようとしたところ、下記のようなエラーが発生しました。 i firestore: Firestore Emulator logging to firestore-debug.logosting ! firestore: Fatal error occurred: s are not running, calls to these services from the Functions emulator will affect p Firestore Emulator has exited because java is not installed, you can install it from https://openjdk.java.net/install/, Your requested "node" version "10" doesn't match your global version "14" stopping all running emulatorsirestore-emulator-v1.11.15.jar... i functions: Stopping Functions Emulator i firestore: Stopping Firestore Emulator ! firestore: Error stopping Firestore Emulator 解決法 Javaがインストールされていないとのエラーメッセージなので、 AdoptOpenJDK をインストールします。この記事を書いている時点でのLTSのJava 11をインストールして無事起動するようになりました。

eslintのエラー「describe is not defined when installing jest」の解消法

Jestでテストを書く際にdescribe functionを使うと、describe functionが定義されていないので「‘describe’ is not defined.(no-undef)」というeslintのエラーが出ることがありますが、eslint.jsに下記の設定を追加すれば解消します。 "env" : { "jest" : true } 同様にmocha関連のfuncionを使用した際にも「‘xxxxxx’ is not defined.(no-undef)」などが出ることがありますが、これも "env" : { "mocha" : true } と追記すれば解消します。

Windowsでnvmを使う方法

複数のNode.jsのバージョンを管理するソフトウェアとしては、下記のようなものがあります。 nvm (Node Version Manager) nodebrew nodenv 本記事ではWindowsでnvmの使い方を解説します。 NVMの主なコマンド一覧 いずれもWindowsでは管理者権限でPowerShellやコマンドプロンプトを実行するのが無難です。 nvm list available インストール可能なNode.jsのバージョン一覧を出力。 nvm install {version} {version}で指定したNode.jsをインストール。 nvm ls 現在インストールされているNode.jsのバージョン一覧を出力。 nvm use {version} {version}で指定したNode.jsに切り替え。

Unityのバイナリがフォルダに出力されない問題

Visual Studio上でNUnitのプロジェクトから、Unity本体のプロジェクトを参照させて、Unity本体のプロジェクトのコードの一部をテストさせようとしたところ、下記のエラーメッセージが出力され、Debugディレクトリにアセンブリが生成されず、NUnitを実行することができませんでした。 Metadata file 'ProjectFolder\Temp\bin\Debug\Assembly-CSharp.dll' could not be found. Google先生で検索したところStack Overflowでドンピシャの質問を見つけました。 https://stackoverflow.com/questions/58614995/visual-studio-doesnt-put-binaries-of-unity-project-to-output-folder 記事の通り Disable the full build of projects を False に設定すると、無事bin/Debugフォルダにアセンブリが出力されるようになりました。

ElasticsearchのIndexのメンテナンスツールであるCuratorの使い方メモ

詳細は オフィシャルのドキュメント を参照してもらうとして、使い方は下記になります。 # --configでどのElasticsearchを参照するかを指定 # 最後の引数のactions.ymlで何日前のインデックスを消すかなどを設定 curator --config /etc/curator/curator.yml /etc/curator/actions.yml 下記はcurator.ymlの例です。 client: hosts: - http://elasticsearch-host.com/ port: 9200 url_prefix: use_ssl: False certificate: client_cert: client_key: ssl_no_validate: False http_auth: user:password timeout: 30 master_only: False logging: loglevel: INFO logfile: logformat: default blacklist: ['elasticsearch'] 下記はactions.ymlの例です。 actions: 1: action: delete_indices description: >- logstash-で始まり、30日より古いインデックスを削除 options: ignore_empty_list: True disable_action: True filters: - filtertype: pattern kind: prefix value: logstash- - filtertype: age source: name direction: older timestring: '%Y.%m.%d' unit: days unit_count: 30

PHPのregister_shutdown_functionで登録した関数内でmemory_limitを増加させる

PHPで、特にメモリ不足のエラーが発生してプログラムが強制終了したときに、register_shutdown_functionに終了時に実行したい関数を登録することで、プログラム終了時にその登録した関数を実行することができます。 が、その登録した関数内の処理でメモリ不足になり、実行したかった処理が実行されないという問題に遭遇しました。 色々テストしたところ、register_shutdown_functionに登録した関数内でPHPのmemory_limitを増加させれば対応できることがわかりました。 といわけで現在のmemory_limitに任意のメモリ値を足すメソッドを作成してみました。 下記のsetAddedMemoryLimitByMegaByteメソッドは、引数にmemory_limitの増分を渡すことで、memory_limitの設定値を増加させることができます。 注意点として、作成したプログラム内のmemory_limitの許容フォーマットは こちら に書かれている情報に基づいて決めました。 今のプログラムは、256、128K、1024M、3Gなどは正しく処理可能です。 メモリサイズの設定値なので、そこまで変な値が設定される可能性は少ないですが、もし今のプログラムで処理できない場合は、convertMemoryLitAsByteValue内のmemory_limitをパースしている正規表現部分を修正することで対応できます。 class PHPUtils { public static function setAddedMemoryLimitByMegaByte($addition) { $current = ini_get('memory_limit'); if($current == -1) { return; } try { ini_set('memory_limit', self::calcAddedMemoryAsMegaByte($current, $addition))...

Visual Studioで「Source file '...' could not be found」のエラーを解消する方法

問題 Visual Studio上でC#のプロジェクトをビルドを実行したところ「Source file '...' could not be found」のエラーが発生してビルドできなくなってしまいました。 少し調べたところ、Visual Studioのプロジェクトファイル(csproj)のXMLのProject > ItemGroup > Compileのエントリに存在しないファイルが含まれていることが原因でした。 解決法 Visual Studio上からプロジェクトを一度Unloadして、csprojから当該のXMLエントリを削除して、再度プロジェクトをReloadしたところ解決しました。 (プロジェクトのUnload -> Relaodは念のために実施しました)。 下記のようなXMLエントリを探せばOKです(Include属性のファイル名部分はダミーです)。 <ItemGroup> <Compile Include="dir\something1.cs"> <Compile Include="dir\something2.cs"> <Compile Include="dir\missing.cs"> ... </ItemGroup> [補足] 通常のVisual Studioとかで作成したプロジェクトは、csproj内でCompileエントリが直接設定されていることは少ないようです。Unityから作成したプロジェクトなので、1ファイルずつCompileのエントリが設定されていたようです。