技術メモ、Tips、忘備録

技術系のメモ、試してみたこと、その他

cmdでwhereして見つかったものののパスをクリップボードに保存したい

タイトル通りです
調べるのも面倒なので作りました。
何かと便利(意外とよく使う)
get.bat

@echo off
@chcp 65001 > nul

rem "パスが通ってるファイルのフォルダパスをクリップボードにコピーする"

if "%1"=="" (
    echo パスが通ってるファイルのフォルダパスをクリップボードにコピーする
    exit /B 0
)

where /Q %1

if "%ERRORLEVEL%"=="0" (
    setlocal ENABLEDELAYEDEXPANSION
        for /F "delims=" %%i in ('where %1') do (
            echo %%~dpi
            set /P <NUL="%%~dpi" | clip
        )
     endlocal
) else (
    echo ファイルが見つかりません
)

■動かしみる

C:\>echo dummy|clip

C:\>powershell
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

Try the new cross-platform PowerShell https://aka.ms/pscore6

PS C:\> Get-Clipboard
dummy

PS C:\> exit

C:\>where sakura
C:\Program Files (x86)\sakura\sakura.exe

C:\>get sakura
C:\Program Files (x86)\sakura\

C:\>powershell
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

Try the new cross-platform PowerShell https://aka.ms/pscore6

PS C:\> Get-Clipboard
C:\Program Files (x86)\sakura\
PS C:\>

バッチはオーバーヘッドが少ないのでやっぱりいいですね。 Powershellももう少し気楽に使えるようになることを願います。

・免責事項

当方は、当記事にコンテンツを掲載するにあたって、その内容、機能等について細心の注意を払っておりますが、コンテンツの内容が正確であるかどうか、最新のものであるかどうか、安全なものであるか等について保証をするものではなく、何らの責任を負うものではありません。また、当方は通知することなく当記事に掲載した情報の訂正、修正、追加、中断、削除等をいつでも行うことができるものとします。また、当記事、またはコンテンツのご利用により、万一、ご利用者様に何らかの不都合や損害が発生したとしても、当方は何らの責任を負うものではありません。