গিট বাশ আমার পথ দেখছে না


107

আমি যখন গিট বাশ ব্যবহার করি (উইন্ডোজে), আমি এর সম্পূর্ণ পাথ নির্দিষ্ট না করেই কোনও এক্সিকিউটেবল চালাতে পারি না, যদিও এটি আমার প্যাথ ভেরিয়েবলের একটি ফোল্ডারে অবস্থিত। দেখে মনে হচ্ছে বাশ এটিকে চিনতে পারে না। কেন? আমি কি এটি ঠিক করতে পারি?


1
আপনার পাথ ভেরিয়েবলের মধ্যে ঠিক কী আছে তা আপনি প্রদর্শন করতে পারেন?
চোরোবা

হুম এটা আমার প্রশ্নের সাথে কীভাবে সম্পর্কিত? যদি আপনি সন্দেহ করেন যে এটি ত্রুটিযুক্ত, তবে আমি নিশ্চিত যে এটি তা নয়, কারণ আমি নিয়মিত উইন্ডোজ শেল (সেন্টিমিটার) ব্যবহার করে একই এক্সিকিউটেবল চালাতে পারি।
ulu

@ জুলু: এটি আপনার প্রশ্নের সাথে সম্পর্কিত কারণ প্যাথ ভেরিয়েবলটি নির্ধারণ করে যা কোন এক্সিকিউটেবলকে পাওয়া যায় ... বাশ শেলের মধ্যে থেকে প্যাথ ভেরিয়েবলটি দেখতে কেমন?
জলফ

সংক্ষেপে, এটিতে / ই / প্রোগ্রামস / সরঞ্জাম / বিনটি কোথাও শেষের কাছাকাছি রয়েছে, এটিই আমি আগ্রহী সেই পথটি Maybe সম্ভবত সমস্যাটি হ'ল আমি কোনও ব্যাট ফাইল চালানোর চেষ্টা করছি?
ulu

উত্তর:


64

বুঝেছি. উইন্ডোজ ব্যবহারকারী হিসাবে, আমি এক্সটেনশন ছাড়াই এক্সিকিউটেবল নাম টাইপ করতে ব্যবহৃত হয়েছি। আমার ক্ষেত্রে, আমি একটি ফাইল ডেকে কার্যকর করতে চেয়েছিলাম cup.bat। একটি উইন্ডোজ শেল, টাইপিং cupযথেষ্ট হবে। বাশ এইভাবে কাজ করে না, এটি পুরো নাম চায়। টাইপিং সমস্যার cup.batসমাধান করে। (যদিও আমি ফাইলটি চালাতে সক্ষম হইনি, যেহেতু দৃশ্যত বাশ এর বিষয়বস্তু বুঝতে পারে না)

পশ-গিটে স্যুইচ করার আরও একটি কারণ ..

আমাকে সঠিক দিকের দিকে দেখানোর জন্য @ টমকে ধন্যবাদ।


5
নামটি সংক্ষিপ্ত করতে আপনি একটি নামও ব্যবহার করতে পারেন:alias cup=cup.bat
ভিটালি ডেটলিং

উইন্ডোজ এক্সিকিউটিয়েবলগুলি সমাধানের জন্য PATH এবং PATH_EXTENSIONS উভয়ই ব্যবহার করে, যখন লিনাক্স বিশ্ব কেবল PATH
ফেরিবিগ

আপনার শেল স্ক্রিপ্ট অবশ্যই কিছু বলা উচিত নয় .bat; এক্সটেনশনটি উইন্ডোজ ব্যাচের স্ক্রিপ্টকে বোঝায় - বিশেষ করে উইন্ডোজ মেশিনে।
ট্রিপলি

পশ-গিট কী সমাধান করে? আপনার কি আর এক্সটেনশন টাইপ করার দরকার নেই?
কিওয়ার্টি

@ কিওয়ার্টি পশ একটি পাওয়ারশেল কনসোল, এতে স্যুইচ করার অর্থ সমস্ত পরিচিত কমান্ড এবং শর্টকাট সহ আরও একটি উইন্ডোজ-বান্ধব কনসোল। এবং হ্যাঁ, ঠিক কোন উইন্ডোজ কনসোলে মতো, আপনি টাইপ করতে হবে না ".exe" বা ".bat"
Ulu

53

সম্ভবত বাশ আপনার উইন্ডোজ পাথটি দেখতে পাবে না। এটিenv|grep PATH কোন পাথটি দেখছে তা নিশ্চিত করতে ব্যাশে টাইপ করুন ।


1
এটি বলে: প্যাথ = / সি / ব্যবহারকারী / ইউলু / বিন:।: / ইউএসআর / স্থানীয় / বিন: / মিংডাব্লু / বিন: / বিন: / ই / প্রোগ্রামস / রুবি / বিন: / সি / পি রোগ্রাম ফাইল / সাধারণ ফাইল / মাইক্রোসফ্ট শেয়ার্ড / উইন্ডোজ লাইভ: / সি / প্রোগ্রাম ফাইল (x86) / সি ওমন ফাইল / মাইক্রোসফ্ট শেয়ার্ড / উইন্ডোজ লাইভ: / সি / উইন্ডোজ / সিস্টেম 32: / সি / উইন্ডোজ: সি / উইন্ড ওজ / সিস্টেম 32 / ওয়েবে: / সি / উইন্ডোজ / system32 / WindowsPowerShell / v1.0 হওয়া /: / ই / প্রোগ্রাম ফাইল (এক্স 86) / মাইক্রোসফট SQL সার্ভার / 90 / টুলস / binn /
Ulu

2
"যা আপনার_বাচ_ফাইলে.বাট" (উদ্ধৃতি ব্যতীত) চালানোর চেষ্টা করুন। এটি যদি আপনার ব্যাচের ফাইলের অবস্থানটি ফিরে আসে তবে তা যদি সত্যই পথে থাকে।
টম

15
গিট-ব্যাশ দেখার জন্য আমি কীভাবে পথ যুক্ত করব?
অ্যাঞ্জেল এস মোরেনো

14
@ অ্যাঞ্জেলস.মোরেনো আপনার হোম ডিরেক্টরি অনুসারে একটি ".bashrc" ফাইল আপডেট করুন বা তৈরি করুন (উদাহরণস্বরূপ "উইট ~ / .bashrc" গিট ব্যাশ / সাইগউইনে), তারপরে "PATH = $ PATH: <আপনার_পথ_1>: <আপনার_পথ_2>: যোগ করুন। ..: এই ফাইলটিতে <আপনার_পথ_ন> "। সুতরাং, আপনি যদি "/ usr / bin / mypath" PATH ভেরিয়েবলের মধ্যে থাকতে চান তবে এই লাইনটি পড়তে পারে: PATH = $ PATH: / usr / bin / mypath
ড্যানিয়েল

35

@ ড্যানিয়েলের মন্তব্য অনুসরণ করে এবং @ টমের জবাবের জন্য ধন্যবাদ জানার পরে, আমি জানতে পেরেছিলাম যে গিট বাশ সত্যই প্যাথ ব্যবহার করছে তবে আমি সম্প্রতি ইনস্টল করা সর্বশেষতম পাথ নয়। এই সমস্যাটি সমাধান করার জন্য, আমি নিজের বাড়ির (উইন্ডোজ) ডিরেক্টরিতে একটি ফাইল যুক্ত করেছি:

.bashrc

এবং নিম্নলিখিত বিষয়বস্তু:

PATH=$PATH:/c/Go/bin

কারণ আমি গো ইনস্টল করছিলাম এবং এই পথে এক্সিকিউটেবল go.exe নও গিট বাশ কমান্ডটি সনাক্ত করতে সক্ষম ছিল:

go

সম্ভবত আমার ক্ষেত্রে কেবল একটি সিস্টেম রিবুট যথেষ্ট ছিল তবে আমি খুশী যে এই সমাধানটি যে কোনও ক্ষেত্রেই কাজ করে।


এবং একাধিক পথ যোগ করতে?
নিকিফোরস

PATH=$PATH:/c/Go/bin:/c/other/path
মিকাউল মায়ার

হোম উইন্ডোজ ডিরেক্টরি বলতে কী বোঝ? নির্ধারন করুন.
মিয়া আসবাত আহমদ

c:/Users/[myusername]/এটি আমার হোম ডিরেক্টরি
মিকাউল মায়ার

9

আপনি গিট ইনস্টল করার সময় আপনি নীচে প্রদর্শিত বিকল্পটি নির্বাচন করতে পারেন, এটি আপনাকে স্বয়ংক্রিয়ভাবে পথ নির্ধারণ করতে সহায়তা করবে।

গিট ইনস্টলেশন উইজার্ড

এটি আমার জন্য কার্যকর হয়েছিল :)


1
@ ইরানোটজাপ বিকল্প গিটার দিয়ে গিট পুনরায় ইনস্টল করবেন? :)
ব্রেট রায়ান

1
@ ইরানোটজাপ এনভিরোনমেটাল ভেরিয়েবল সেটআপ করুন অন্যথায় গিট
। ভি

এই পথটি ব্যবহার করতে গিট ব্যাশ পেতে কীভাবে সহায়তা করবে, যখন শেষ ফলাফলটি হবে যে গিট ব্যাশ এমনকি ইনস্টল করা হবে না?
জুলিউড

@ জুলেস না, গিট ব্যাশ ইনস্টল করার সময় এটি আপনাকে স্ক্রিনশটের মতোই বিকল্পগুলির জন্য জিজ্ঞাসা করবে, সেখানে আপনি আপনার প্রয়োজন অনুযায়ী যে কোনও একটি জিজ্ঞাসা করতে পারেন, গিট ব্যাশ নির্বাচন বিকল্পের সাথে ইনস্টল হয়ে যাবে।
মুথামিজচেলওয়ান। ভি

9

সি: \ ব্যবহারকারী \ USERNAME এ একটি ফাইল তৈরি করুন যা কনফিগার.বাশার্ক নামে পরিচিত, এতে রয়েছে:

PATH=$PATH:/c/Program\ Files\ \(x86\)/Application\ with\ space

এখন কমান্ড লাইনে ফাইলটি সঠিক অবস্থানে নিয়ে যান:

mv config.bashrc .bashrc

4

PATH এ নতুন মান যুক্ত করার পরে কম্পিউটার পুনরায় চালু করুন।


1
কম্পিউটারটি পুনরায় চালু করার দরকার নেই, টার্মিনাল সেশনটি করে।
খ্রিস্টিয়ানবন্দি

2
@ ক্রিশ্চিয়ানবুন্দি আমি নিশ্চিত নই, তবে দেখে মনে হচ্ছে যে টার্মিনালটি পুনরায় চালু হতে সাহায্য করা হয়নি, তবে কম্পিউটার পুনরায় চালু করা সাহায্য করেছে, তাই আমি এই উত্তরটি লিখেছি। পুনঃসূচনা টার্মিনালটি প্রথম, যা আমি চেষ্টা করি।
পাভেল

যেমন একটি সহজ উত্তর, এবং সম্পূর্ণ কার্যকর।
বোবানহালফ

4

পুরানো প্রশ্ন তবে এটি অন্য কাউকে সহায়তা করতে পারে।

আমি আমার পাঠ্য ব্যবহারকারীকে প্রশস্ত করেছি, তার পরে আমি কেবল লগঅফ করে আবার লগইন করেছি।

হ্যাঁ, ওটাই! git bashনতুন PATH মানটি সঠিকভাবে লোড করা হয়েছে।


গিট বেস্ক বন্ধ বা লগ অফ না করেই কি এটি সম্ভব? আমার অর্থ আমি পাথের পরিবর্তনশীল সেট করতে চাই এবং আমি এটি বর্তমান গিট
ব্যাশটি

হতে পারে আপনি কাজ করতে পারে: export PATH=$NEW_PATH:$PATH। এবং
স্টাফটি

2

আমি নিশ্চিত করতে পারি যে সিস্টেমটি পুনরায় আরম্ভ করার ফলে উইন্ডোতে পরিবেশগত পরিবর্তনশীল প্যাথ সেটটি গিট দ্বারা বাছাই করা হবে এবং অন্য কোনও স্বয়ংক্রিয় উপায় নেই তা নিশ্চিত করবে।


1

মনে হচ্ছে এটির মূল কারণটি হ'ল গিট বাশ সর্বদা% USERPROFILE% ভেরিয়েবলটি সঠিকভাবে পার্স করতে সক্ষম নয়। এটিকে সি: \ ব্যবহারকারীগণের সাথে তুলনামূলকভাবে পরিবর্তিত করার পরিবর্তে এটি সি: \ উইন্ডোজ \ সিস্টেম 32 \ সিস্টেমেপ্রোফিল value এর মানটি পেয়ে যায় this এটিকে একটি সম্পূর্ণ যোগ্য ঠিকানায় পরিবর্তন করার পরে, এটি কাজ করে এবং আমি পরে এটি সেট করে দিলেও, গিট বাশ এখনও কোনও কারণে সঠিক পথ রয়েছে।


1

উইন্ডোজ 10 এ, গিটটি আনইনস্টল করুন এবং এটি আবার ইনস্টল করুন। এটি আপনার জন্য স্বয়ংক্রিয়ভাবে পরিবেশ পরিবর্তনশীল সেট করবে। আমি ভুল করে পরিবেশের পরিবর্তনশীলটিকে সরিয়ে দিয়েছি এবং আমি আমার আইডিই এর ভিতরে গিট ব্যবহার করতে পারি না। গিটটি পুনরায় ইনস্টল করার ফলে এই সমস্যাটি স্থির হয়েছে।


1

কেস আপনার git-bash'র PATHকিন্তু দলিল না সর্বশেষ এবং আপনি একটি পুনরায় বুট করতে চান কিন্তু আপনার পুনর্জাত না PATHগুলি, আপনি সমস্ত বন্ধের চেষ্টা করে দেখতে পারেন cmd.exe, powershell.exeএবং git-bash.exeএবং সূচনা মেনুতে বা ডেস্কটপ থেকে এক cmd.exe উইন্ডো পুনরায় খোলা এবং যদি দেখতে PATHenv আপডেট করা হয় । যদি আপনি সিস্টেম-প্রশস্ত পরিবর্তন করে থাকেন তবে আপনাকে PATHএকটি সুবিধাযুক্ত সেমিডি উইন্ডোও খুলতে হবে।

দ্রষ্টব্য: এটি সমস্ত উইন্ডোজ সংস্করণগুলির সাথে কাজ করে না এবং cmd.exeস্টার্ট মেনু বা ডেস্কটপ ব্যতীত অন্য কোথাও খালি কাজ করতে পারে না , আমার 3 কম্পিউটারের সাথে পরীক্ষিত হয়েছে এবং এর মধ্যে 2 টি কাজ করে। এটি কেন কাজ করে তা আমি বুঝতে পারি নি, তবে PATHলগইন এবং লগআউট করার সময় যেহেতু পরিবেশের পরিবর্তনশীল স্বয়ংক্রিয়ভাবে উত্পন্ন হয়, আমি পরিবর্তনশীল যুক্তি দিয়ে সেই পরিবর্তনশীলটিকে বিশৃঙ্খলা করতে চাই না।


0

আমার জন্য সবচেয়ে সুবিধাজনক ছিল: 1) সি: ড্রাইভের মূলটিতে "বিন" ডিরেক্টরি তৈরি করুন 2) "সি: / বিন" যুক্ত করুন; "আমার কম্পিউটার -> বৈশিষ্ট্য -> এনভায়রোনমেটাল ভেরিয়েবলস" এ পাঠাবেন


0

আমি যখন উইন 10-এ xgboost lib সংকলন করার জন্য মিংডাব্লু ব্যবহার করার চেষ্টা করি তখন আমি এই সমস্যার মুখোমুখি হই। অবশেষে আমি সমাধানটি খুঁজে পেলাম।

আপনার হোম ডিরেক্টরিতে .bashrc নামে একটি ফাইল তৈরি করুন (সাধারণত সি: \ ব্যবহারকারী \ ব্যবহারকারী নাম)। তারপরে এর সাথে পথ যুক্ত করুন। আপনার পথে ফাঁকা থাকলে উক্তি ব্যবহার করতে ভুলবেন না এবং সি: / এর পরিবর্তে / সি / ব্যবহার করতে ভুলবেন না

উদাহরণ স্বরূপ:

PATH = $ পাঠ: "/ সি / প্রোগ্রাম ফাইল / মিংডাব্লু- w64 / x86_64-7.2.0-পিক্সিক-সেহ-আরটি_ভি 5-রেভ 1 / মিংউউ 64 / বিন"


0

আমি আমার পক্ষে একটি বোকা ভুল করেছি। আমার উইন্ডোজ 10 মেশিনে আমার গোলং ওয়ার্কস্পেসের জন্য একটি সিস্টেম প্রশস্ত এবং একটি ব্যবহারকারী পরিবর্তনশীল পথ সেট ছিল। আমি যখন রিডানড্যান্ট সিস্টেমগুলির পরিবর্তনশীল পথটি সরিয়ে ফেলা এবং লগ অফ করে ফিরে এসেছি, তখন আমি সাফল্যের সাথে ব্যাশ এবং কল গো এনভিতে কল করে .exe ফাইলগুলি কল করতে সক্ষম হয়েছি।

যদিও ওপিকে উত্তর দেওয়া হয়েছে এটি অন্য একটি সমস্যা যা আপনার পথগুলি দেখার থেকে বাধা দিতে পারে। আমি কেবল এই সমস্যার সাথে আবার বাশ পরীক্ষা করেছি এবং মনে হচ্ছে এটি কোনও ধরণের সংঘাত দেয় যা পাথের কোনও একটিকে অনুসরণ করতে বাধা দেয়।


0

আমি জানি এটি একটি পুরানো প্রশ্ন তবে দুটি ধরণের পরিবেশ পরিবর্তনশীল রয়েছে। ব্যবহারকারীর মালিকানাধীন এক এবং প্রশস্ত একটি সিস্টেম। আপনি কীভাবে গিট ব্যাশ খুলবেন (ব্যবহারকারীর সুবিধার্থে বা প্রশাসকের সুবিধাসহ) PATH এনভায়রনমেন্ট ভেরিয়েবল আপনার ব্যবহারকারীর ভেরিয়েবল বা সিস্টেম ভেরিয়েবল হতে পারে। নিচে দেখ: এখানে চিত্র বর্ণনা লিখুন

আগের উত্তরে যেমন বলা হয়েছে, env|grep PATHআপনি কোনটি ব্যবহার করছেন তা দেখতে কমান্ডটি পরীক্ষা করে দেখুন এবং সেই অনুসারে আপনার পরিবর্তনশীল আপডেট করুন update বিটিডাব্লু, সিস্টেমটি পুনরায় বুট করার দরকার নেই। গিট ব্যাশটি বন্ধ করুন এবং আবার খুলুন


0

আমার ক্ষেত্রে এটি হিরকু ক্লাই এবং গিট ব্যাশ ইনস্টল করার সময় ঘটেছিল, আমি এখানে কাজ করার জন্য যা করেছি।

এই অবস্থান পেয়েছি

C:\Users\<username here>\AppData\Local

এবং ফাইলটি আমার কেস হিরকু ফোল্ডারে মুছুন। তাই আমি ফোল্ডারটি ডিলেড করে সিএমডি চালিয়েছি। এটা কাজ করছে


-1

আপনার AT PATH ভেরিয়েবলটি সম্পাদনা / যুক্ত করার সময় (\) বিশেষ অক্ষরগুলি এড়িয়ে চলবেন না। উদাহরণস্বরূপ, প্রোগ্রাম ফাইলগুলিতে একটি অ্যাপ্লিকেশন ডিরেক্টরি এর মতো দেখাবে: PATH=$PATH:/c/Program Files (x86)/random/application

এটি করবেন না:
PATH=$PATH:/c/Program\ Files\ \\(x86\\)/random/application/

আশাকরি এটা সাহায্য করবে.


PATH=$PATH:/c/Program Files (x86)/random/application... এটি PATH সেট করার জন্য বাশ সিনট্যাক্স সঠিক নয়। এটি অস্থায়ীভাবে ডিরেক্টরিটিতে ডিরেক্টরি যুক্ত করবে /c/Program, তারপরে Filesযুক্তি দিয়ে প্রোগ্রামটি চালানোর চেষ্টা করবে (x86)/random/application। আপনার "এটি করবেন না" উদাহরণটিতে কেবল ভুলটি হ'ল এটি বন্ধনীগুলির জন্য দ্বিগুণ ব্যাকস্ল্যাশ হয়েছে, যখন একক ব্যাকস্ল্যাশ সঠিক হয়।
জুলিউস

-2

আপনারা যারা উইন্ডোজ সিস্টেম env সহ উপরে বর্ণিত সমস্ত পদ্ধতি ব্যবহার করে গেছেন। ভেরিয়েবল, .bashrc, .Bashprofile, ইত্যাদি এবং 'প্রতিধ্বনি $ PATH' এ সঠিক পথটি দেখতে পাচ্ছে ... আপনার জন্য আমার সমাধান থাকতে পারে।

এক্সিকিউটিভ 2> / ডিভ / নাল ব্যবহার করে ত্রুটিগুলি দমন করুন

আমার স্ক্রিপ্টটি ঠিক আছে তবে 'কমান্ড পাওয়া যায়নি' বা 'কোনও ডিরেক্টরি খুঁজে পাওয়া যায়নি' ত্রুটি ছুঁড়ে দিচ্ছিল, যদিও আমি বলতে পারি, পাথগুলি ফ্লাশ ছিল। সুতরাং, যদি আপনি এই ত্রুটিগুলি দমন করেন (এটি 'সেট + ই' যুক্ত করতেও পারে), এটি সঠিকভাবে কাজ করে না।


1
এটি কেবল ত্রুটিগুলি উপেক্ষা করে সমস্যার মূল কারণটি সমাধান না করে বলে মনে হচ্ছে।
nmio

-3

পাথ নামের একটি ব্যবহারকারী ভেরিয়েবল তৈরি করুন এবং% पथ% এর মান হিসাবে যুক্ত করুন, যা আমি লক্ষ্য করেছি গিত বাশ কেবলমাত্র ব্যবহারকারী ভেরিয়েবলগুলি দেখায় সিস্টেম সিস্টেম পরিবর্তনীয় নয়। উল্লিখিত পদ্ধতিটি সম্পাদন করে আপনি ব্যবহারকারীর ভেরিয়েবলগুলিতে আপনার সিস্টেমের পরিবর্তনশীল উন্মোচন করবেন।


-3

উইন্ডোজ 7 পাথ এনভায়রনমেন্ট ভেরিয়েবলগুলিতে আমি সিস্টেম ভেরিয়েবল পাথের শেষে যুক্ত করি

\ সি: \ প্রোগ্রাম ফাইলগুলি it গিট \ বিন

এবং এটি এখন কাজ করে!

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