উইন্ডোজ এর সমতুল্য?


163

সেখানে ইউনিক্স একটি সমতুল্য হয় whereis উইন্ডোজে কমান্ড?

যাতে আমি বুঝতে পারি যে কমান্ডগুলি আমি চালাতে পারি তা আসলে actually

উত্তর:


202

যেখানে কমান্ড আপনাকে আসলে কি চায় আর উইন্ডোজ 98 জন্য সম্পদ কিট অন্তত ফিরে যায়, এবং সার্ভার 2003 ডিফল্টরূপে অন্তর্ভুক্ত করা হয়, বীথি, এবং নতুন:

C:\>where csc
C:\Windows\Microsoft.NET\Framework\v3.5\csc.exe
C:\Windows\Microsoft.NET\Framework\v2.0.50727\csc.exe

যদি কোনও যুক্তি ছাড়াই (ভিস্টায়) মৃত্যুদণ্ড কার্যকর করা হয়, তবে এটি আমার প্রিয় বার্তাগুলির একটিতে ফলাফল দেয়:

C:\>where
ERROR: The operation completed successfully.

পাওয়ারশেলের মধ্যে যদি নির্বাহ করা হয়, তবে পথের সাথে যে কোনও এলিয়াস বা স্ক্রিপ্ট থেকে আলাদা করতে '.exe' অন্তর্ভুক্ত করতে ভুলবেন না। ('যেখানে' হু-অবজেক্ট.পিএস 1 এর জন্য একটি সাধারণ নাম)

C:\> where.exe where.exe
C:\Windows\System32\where.exe

4
প্রতিদিন আমি নতুন কিছু শিখি ...
রুবেেন্স মারিউজো

4
দু: খিত ধরনের whereমাত্র ব্যবহার সাহায্যের ফেরৎ এখন উইন্ডোজ 7. মধ্যে নিজেকে জন্য এটি দেখতে চেয়েছিলেন: P
Svish

2
whereএক্সপি
টম রোগেরো

1
@ টমরোগেরো, আমি আরও পরিষ্কার হতে পারতাম। এটি উইন্ডোজ 98 দিয়ে শুরু হওয়া alচ্ছিক সংস্থান কিটের অংশ এবং এটি এক্সপি-র পরে সংস্করণের জন্য বেস ইনস্টলে অন্তর্ভুক্ত।
কেভিন

7

হ্যাকেরিশ যা.সিএমডি:

@echo off
@set PATH=.;%PATH%

@rem 
@rem about:  something similar like the unix-alike-which, but with
@rem         within pure cmd
@rem 

if "%1" == "" (
    @echo Usage: 
    @echo.
    @echo   which 'cmd'
    @echo.
    @echo.if 'cmd' is not found, ERRORLEVEL is set to 1
    @echo.  
) else (
    ( @for %%f in (%1 %1.exe %1.cmd %1.bat %1.pif) do if not "%%~$PATH:f" == "" ( @echo %%~$PATH:f ) else @set ERRORLEVEL=1) 
)

1
এটি পুরানো সিস্টেমগুলির জন্য একটি ভাল ফিক্স, তবে আপনার জানা উচিত এটির ফলাফল কয়েকটি গণ্ডগোল। এটি ডিরেক্টরিগুলির সাথে মেলে, কেবলমাত্র প্রতিটি এক্সটেনশনের জন্য পাথ্রে পাওয়া প্রথম ফলাফলটি দেয় এবং পাঠ্য পরিবেশের ভেরিয়েবলের মধ্যে পাওয়া প্রতিটি এক্সটেনশন অন্তর্ভুক্ত করা উচিত।
কেভিন

এ্যা, এই একটু পুরোনো খনি হ্যাক হয়, যখন আমি তা এখানে আটকানো আমি সঙ্গে সঙ্গে জন্য সম্ভাব্য দেখেছি% PATHEXT% :)
আকিরা

7

দয়া করে যেখানে কমান্ডটি ব্যবহার করুন :

> where app.exe

এটি আপনার লক্ষ্য অর্জনের সেরা উপায়।

আপনি পাওয়ারশেল কমান্ডটিও ব্যবহার করতে পারেন:

> $env:path.Split(';') | gci -Filter app.exe

এবং প্রসারিত সংস্করণটি এর মতো দেখাচ্ছে:

 > $env:path.Split(';') | select -Unique | ? {$_ -and (test-path $_)} | gci -Filter app.exe

3

কোথাও "সেখানে" আমি এই ব্যাচের ফাইলটি পেয়েছি whereis.bat:

@for %%e in (%PATHEXT%) do @for %%i in (%1%%e) do @if NOT "%%~$PATH:i"=="" echo %%~$PATH:i

আপডেট: সম্ভবত আমি এটি এখানে খুঁজে পেয়েছি ।



1
function find ($string) { 
   Get-ChildItem -Path 'c:\' -Recurse -Filter $string; 
}

function whereis ($string) { 
   $superpath = "$env:Path;C:\Program Files;C:\Program Files (x86)";
   (echo $superpath).Split(';') | Get-ChildItem -Recurse -Filter $string; 
}

উদাহরণ:

পিএস> মোজিলা.এডিএমএক্স সন্ধান করুন

    Directory: C:\Windows\PolicyDefinitions                                                                                     

Mode                LastWriteTime         Length Name                                                                           
----                -------------         ------ ----                                                                           
-a----        1/27/2016  12:22 PM          37146 Mozilla.admx                                                                   

পিএস> যেখানে ফায়ারফক্স.এক্সে

    Directory: C:\Program Files\Mozilla Firefox                                                                                 

Mode                LastWriteTime         Length Name                                                                           
----                -------------         ------ ----                                                                           
-a----        9/21/2017   5:30 PM         477136 firefox.exe        

0

আমি আজ এটির জন্য অনুসন্ধান করছিলাম এবং যেহেতু আমি সংস্থান কিট ছাড়াই এক্সপিতে আছি, আমি নিম্নলিখিত কমান্ডটি দিয়ে পাওয়ারশেলে ফিরেছি:

dir -path c:\ -filter ffmpeg.* -r

আমি পাওয়ারশেলে দক্ষ নই তবে মনে হচ্ছে আপনি পুরো ডিরেক্টরি ট্রিটি দিয়ে সন্ধান করছেন। এটি সমান নয় whereযা কেবল অনুসন্ধান করে %PATH%। তবুও এটি অনেক ধীর এবং আপনার ফোল্ডারের জন্য ত্রুটি দেয় যা আপনার পড়ার অনুমতি নেই
phuclv

সম্মত ... আমার কার্যকারিতাটির সঠিক কপি প্রয়োজন হয়নি, একটি প্রোগ্রাম সনাক্ত করার সক্ষমতা।
ক্যালেনজি

-1

আপনি নিম্নলিখিতটি ব্যবহার করে কমান্ডটি অনুসন্ধানের চেষ্টা করতে পারেন:

dir /s type-whatever-you-are-searching

এটি আমার পক্ষে কাজ করে না। উদাহরণস্বরূপ, exp কমান্ডটি আমার পথে রয়েছে তবে dir / s exp বা dir / s exp.exe কেবল "ফাইল খুঁজে পাওয়া যায় না" দেয়।
bobmcn

4
এটি কার্যকর হবে যদি ক) আপনি ড্রাইভের মূল থেকে অনুসন্ধান করেন, খ) আপনার পথটি সমস্তই একটি ড্রাইভে রয়েছে এবং গ) আপনার পথটি অভিধানিকভাবে রয়েছে ical এমনকি এই পরিস্থিতিতে এটি হাস্যকরভাবে ধীর হবে।
কেভিন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.