ฉันจะแก้ไข $ PATH (.bash_profile) บน OSX ได้อย่างไร


174

ฉันกำลังพยายามแก้ไขรายการใน PATH เนื่องจากฉันทำอะไรผิดพลาด

ฉันใช้ Mac OS X 10.10.3

ฉันเหนื่อย:

> touch ~/.bash_profile; open ~/.bash_profile

แต่ตัวแก้ไขไฟล์จะเปิดขึ้นโดยไม่มีอะไรอยู่ข้างใน

ปัญหาของฉัน:

ฉันกำลังพยายามติดตั้ง ANDROID_HOME ใน PATH ของฉัน

ฉันสะกดมันผิด แต่เมื่อฉันปิดเครื่องและกลับไปมันก็หายไปดังนั้นฉันจึงลองอีกครั้ง:

export ANDROID_HOME=/<installation location>/android-sdk-macosx
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

ครั้งนี้ฉันพิมพ์คำสั่งอย่างถูกต้อง แต่เมื่อฉันปิดเครื่องการตั้งค่าของฉันก็หายไปอีกครั้ง

ฉันจะเรียกใช้การตั้งค่าที่ต้องการได้อย่างไร

ถ้าฉันจะแก้ไข bash.profile ฉันจะป้อนรหัสด้านบนได้อย่างไร

ขอบคุณ!


3
ใช้vi ~/.bash_profileหรือsubl ~/.bash_profileหรือmate ~/.bash_profileขึ้นอยู่กับการแก้ไขที่คุณชื่นชอบ
Droppy

เพิ่งลองนาโน ~ / .bash_profile มันโหลด แต่ไม่มีอะไรอยู่ภายใน
Joolah

1
เสียงเหมือน.bash_profileว่างเปล่า / หายไปแล้ว
Droppy

3
สำหรับมือใหม่เช่นบันทึกเหล่านี้จะช่วย: 1. ~/.bash_profileหมายความว่ามันอยู่ในไดเรกทอรีราก ~หมายถึงไดเรกทอรีราก 2. ไฟล์ที่ขึ้นต้นด้วย.จะไม่สามารถมองเห็นlsคำสั่งได้ พวกเขาเป็นชนิดของเช่นไฟล์ที่ซ่อนไฟล์ผู้ใช้ปกติไม่จำเป็นจริงๆที่จะเห็น กรณีของเราที่นี่เป็นข้อยกเว้น เพื่อให้สามารถดูได้คุณสามารถทำได้ls -a3. touchจะสร้างไฟล์ที่ไดเรกทอรีที่ระบุหากไม่มีอยู่ มันมันไม่อยู่แล้วไม่มีอะไรที่จะเกิดขึ้น
น้ำผึ้ง

4. และแน่นอนว่าopenจะเปิดด้วย texteditor เริ่มต้นของคุณ 5. ผลที่ได้touch ~/.bash_profileจากการทำไดเรกทอรีใด ๆก็จะใช้งานได้ เพราะเส้นทางของคุณไม่ใช่ญาติ
ฮันนี่

คำตอบ:


359

คุณต้องเปิดไฟล์ด้วยโปรแกรมแก้ไขข้อความแล้วบันทึก

touch ~/.bash_profile; open ~/.bash_profile

มันจะเปิดไฟล์ด้วย TextEdit วางสิ่งของแล้วบันทึก หากคุณเปิดอีกครั้งคุณจะพบการแก้ไขของคุณ

คุณสามารถใช้โปรแกรมแก้ไขอื่น ๆ :

nano ~/.bash_profile
mate ~/.bash_profile
vim ~/.bash_profile

แต่ถ้าคุณไม่รู้วิธีใช้มันง่ายกว่าที่จะใช้openแนวทาง


pbpasteหรือคุณสามารถพึ่งพา สำเนา

export ANDROID_HOME=/<installation location>/android-sdk-macosx
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

ในคลิปบอร์ดของระบบจากนั้นในการเรียกใช้เชลล์

pbpaste > ~/.bash_profile

หรือคุณสามารถใช้ cat

cat > ~/.bash_profile

(ตอนนี้catรออินพุต: วางคำจำกัดความการเอ็กซ์ปอร์ตสองรายการจากนั้นกด ctrl-D)


มีปัญหาในการใช้สิ่งต่าง ๆ เช่นcatเขียนไปยังไฟล์เมื่อข้อความมีการอ้างอิงถึงตัวแปรสภาพแวดล้อมเพราะมันหมายถึงการอ้างอิงเหล่านั้นจะต้องหลบหนี ต้องใช้ตัวแก้ไขข้อความมากกว่าปกติ
Droppy

หมายความว่าอย่างไรถ้าฉันป้อน "touch ./bash_profile" (ไม่ได้บอกอะไรเลย) จากนั้น "open .bash_profile" และมันบอกฉันว่าไม่มีไฟล์อยู่?
Dronz

82

รายละเอียดเพิ่มเติมเล็กน้อยสำหรับผู้เริ่มต้น:

ก่อนอื่นตรวจสอบให้แน่ใจว่าไฟล์. bash_profile มีอยู่หรือไม่ จำไว้ว่าไฟล์. bash_profile นั้นไม่มีอยู่ตามค่าเริ่มต้น คุณต้องสร้างมันเอง

ไปลงในโฟลเดอร์ของผู้ใช้ในการค้นหา ไฟล์. bash_profile ควรหาได้ -> HD / ผู้ใช้ / [USERNAME]

เตือนความจำ: ไฟล์ที่มีจุดเริ่มต้น'.' ถูกซ่อนไว้โดยค่าเริ่มต้น

วิธีแสดงไฟล์ที่ซ่อนอยู่ใน Finder Mac OS:

Press: Command + Shift + .

หากไม่มีอยู่คุณต้องสร้าง. bash_profileด้วยตัวคุณเอง

เปิดแอพเทอร์มินัลแล้วเปลี่ยนเป็นโฟลเดอร์ผู้ใช้ด้วยคำสั่งง่ายๆ

cd

หากไม่มีอยู่ให้ใช้คำสั่งนี้เพื่อสร้างไฟล์ :

touch .bash_profile

ประการที่สองถ้าคุณไม่สามารถจดจำคำสั่ง nerdy สำหรับการบันทึกและปิดในกลุ่ม, nano ฯลฯ (วิธีที่แนะนำข้างต้น) วิธีที่ง่ายที่สุดในการแก้ไขคือการเปิดไฟล์. bash_profile ในโปรแกรมแก้ไขรหัสที่คุณโปรดปราน (Sublime เป็นต้น)

Finder -> โฟลเดอร์ผู้ใช้ คลิกขวา -> เปิดด้วย: Sublime Text (หรือโปรแกรมแก้ไขรหัสอื่น ๆ ) หรือลากไปที่แอพที่ท่าเรือ

... และคุณสามารถแก้ไขได้ส่งคำสั่งส่งออกในบรรทัดใหม่


1
ฉันได้พบการเข้าถึงไฟล์ "ซ่อน" โดยส่วนตัวแล้วจะเป็นข้อดีกับ emacs ...
Mallory-Erik

2
ฉันอัปเดตวิธีการเพื่อแสดงไฟล์ที่ซ่อนอยู่ใน Finder ของ Mac OS กด: Command + Shift +
Herr_Hansen

ด้วยเหตุผลบางอย่างการแตะไม่ได้สร้างไฟล์ แต่ฉันใช้ cat ทำตามคำตอบของ Alessandro
Dronz

44

หากคุณใช้ MAC Catalina คุณต้องอัปเดตไฟล์. zshrc แทน. bash_profile หรือ. profile


2
ว้าวฉันบ้าไปแล้วที่จะพยายามหาสาเหตุที่ฉันไม่สามารถอัปเดตบันเดิลและทำไมระบบของฉันจึงมองหาเส้นทางที่ผิดสำหรับรูบี้ ฉันควรคัดลอกวาง bash_profile ของฉันไปที่ zshrc หรือไม่
ricks

ฉันใช้ catalina แต่ฉันไม่พบไฟล์นั้นคุณสามารถอธิบายไดเรคทอรี่คืออะไร?
MrDev

WTF นี่มันบ้ามาก!
loretoparisi

คุณต้องให้แน่ใจว่า terminal ของคุณอยู่ในขณะนี้ zsh chsh -s /bin/zshกับ ที่จะเปิดใช้งานเทอร์มินัลของคุณให้เป็น zsh โดยอัตโนมัติ จากนั้นคุณสามารถทำการเปลี่ยนแปลงใน ~ / .zshrc หรือ ~ / .zprofile
the775

ขอบคุณ. หากคุณไม่ต้องการพิมพ์ทุกอย่างอีกคุณสามารถทำได้:mv .bash_profile .zshrc
Hatzil

9

สำหรับผู้เริ่มต้น: ในการสร้าง.bash_profileไฟล์ของคุณในโฮมไดเร็กตอรี่ของคุณบน MacOS, รัน:

nano ~/.bash_profile

จากนั้นคุณสามารถวางต่อไปนี้:

https://gist.github.com/mocon/0baf15e62163a07cb957888559d1b054

อย่างที่คุณเห็นมันมีตัวอย่างนามแฝงและตัวแปรสภาพแวดล้อมที่ด้านล่าง

เมื่อคุณทำการเปลี่ยนแปลงเสร็จแล้วให้ทำตามคำแนะนำที่ด้านล่างของหน้าต่างตัวแก้ไขนาโนเพื่อ WriteOut ( Ctrl-O) และ Exit ( Ctrl-X) จากนั้นออกจากเทอร์มินัลแล้วเปิดใหม่อีกครั้งและคุณจะสามารถใช้นามแฝงที่กำหนดไว้ใหม่และตัวแปรสภาพแวดล้อม


5

ใน Macbook ให้ทำตามขั้นตอน:

  1. ก่อนอื่นเปิดเทอร์มินัลและเขียน: cd ~/
  2. สร้างไฟล์ bash ของคุณ: touch .bash_profile

คุณสร้างไฟล์ ".bash_profile" แต่หากคุณต้องการแก้ไขคุณควรเขียนมัน

  1. แก้ไขโปรไฟล์ทุบตีของคุณ: open -e .bash_profile

หลังจากคุณสามารถบันทึกจากมุมบนซ้ายของหน้าจอ: ไฟล์> บันทึก

@canerkaseler


1

Mac OS X ไม่ได้เก็บเส้นทางไว้ใน. bash_profile แต่เป็น. profile เนื่องจาก Mac OS X เป็นสาขาของตระกูล * BSD คุณควรเห็นการส่งออก blah blah blah ใน. profile เมื่อคุณทำ cat. profile บนเครื่องของคุณ


2
ในฐานะของโยเซมิตี (10.10) สิ่งนี้ไม่เป็นความจริงอีกต่อไปถ้าเป็นเช่นนั้น Bash เป็นเชลล์เริ่มต้นบน macOS มาเป็นเวลานานแล้ว ในอดีต * BSD มีcshสิ่งที่เข้ากันไม่ได้และใช้.cshrcและไม่ใช้.profile(แม้ว่าคุณจะต้องใช้เชลล์ที่รองรับบอร์นหลาย.profileตัว
tripleee

1

สำหรับฉัน mac OS ของฉันคือโมฮาวี และฉันกำลังเผชิญปัญหาเดียวกันเป็นเวลาสามวันและในที่สุดฉันเพิ่งเขียนเส้นทางที่ถูกต้องในไฟล์. bash_profile ซึ่งเป็นเช่นนี้:

    export PATH=/Users/[YOURNAME]/development/flutter/bin:$PATH
  • note1: ถ้าคุณไม่มี. bash_profile ให้สร้างขึ้นมาและเขียนบรรทัดด้านบน
  • Note2: ซิปไฟล์ flutter ที่ดาวน์โหลดมาใน [home] / development หากคุณคัดลอกและวางพา ธ นี้

นี้. นอกจากนี้ตรวจสอบให้แน่ใจว่าได้ปิดเทอร์มินัลแล้วเปิดใหม่เพื่อดูคำสั่งการกระพือทำงาน
Paolo

0

กำหนดเส้นทาง JAVA_HOME และ ANDROID_HOME> คุณต้องเปิดเทอร์มินัลแล้วป้อน cmd ด้านล่าง

touch ~/.bash_profile; open ~/.bash_profile

หลังจากนั้นวางเส้นทางด้านล่างในไฟล์โปรไฟล์ฐานและบันทึก

export ANDROID_HOME=/Users/<username>/Library/Android/sdk 
export PATH="$JAVA_HOME/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/emulator:$PATH"
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home

0

กำหนดเชลล์ที่คุณใช้โดยพิมพ์echo $SHELLใน Terminal

จากนั้นเปิด / สร้างไฟล์ rc ที่ถูกต้อง สำหรับทุบตีมันหรือ$HOME/.bash_profile $HOME/.bashrcสำหรับ Z $HOME/.zshrcเปลือกมัน

เพิ่มบรรทัดนี้ไปยังจุดสิ้นสุดไฟล์:

export PATH="$PATH:/your/new/path"

หากต้องการตรวจสอบให้รีเฟรชตัวแปรโดยรีสตาร์ท Terminal หรือพิมพ์source $HOME/.<rc file>จากนั้นทำecho $PATH

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.