Score:0

แก้ไขเส้นทางเพื่อรวมเครื่องหมายคำพูด

ธง cn

Ubuntu ได้รับการติดตั้งบนระบบปฏิบัติการ Windows ฉันค้นหาและพบวิธีเพิ่มเส้นทางใหม่แล้ว แต่ฉันไม่ค่อยเข้าใจวิธีแก้ไขเส้นทางที่มีอยู่แล้ว จากนั้นจึงเพิ่มเครื่องหมายคำพูดรอบเส้นทางที่มีช่องว่าง ฉันมีเส้นทางต่อไปนี้:

PATH=/usr/local/cuda-11.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr /local/games:/mnt/c/ไฟล์โปรแกรม/ไฟล์ทั่วไป/Oracle/Java/javapath:/mnt/c/Windows/System32:/mnt/c/Windows:/mnt/c/Windows/System32/wbem:/ mnt/c/Windows/System32/WindowsPowerShell/v1.0:/mnt/c/Windows/System32/OpenSSH:/mnt/c/ไฟล์โปรแกรม/Git/cmd:/mnt/c/Python27:/mnt/c/Python27 /สคริปต์:/mnt/c/ไฟล์โปรแกรม/PuTTY:/mnt/c/ไฟล์โปรแกรม/Docker/Docker/resources/bin:/mnt/c/ProgramData/DockerDesktop/version-bin:/mnt/c/Users/amason1 /AppData/Local/Programs/Microsoft VS Code/bin:/snap/bin

ฉันจะแก้ไขพา ธ เพื่อใส่เครื่องหมายคำพูดรอบ ๆ ไฟล์โปรแกรมใน /mnt/c/Program Files/Git/cmd ได้อย่างไร

vanadium avatar
cn flag
อาจมีการรับประกัน "สุขอนามัย" บางอย่างใน PATH ของคุณ: คุณไม่สามารถมีเส้นทางสำหรับการเรียกใช้งานได้ทุกที่ในระบบของคุณ เรียนรู้ที่จะทำงานกับ symlinks หรือสคริปต์ตัวตัดคำที่วางอยู่ในไดเร็กทอรีในเส้นทางที่คุณมีอยู่แทน เส้นทางที่ยาวเกินไปนั้นยากต่อการบำรุงรักษา และอาจทำให้การเปิดแอปพลิเคชันช้าลงในบางครั้ง
Sunshine avatar
cn flag
ขอบคุณวานาเดียม ฉันขอขอบคุณข้อเสนอแนะ
Score:1
ธง uz
Jos

สิ่งนี้ควรใช้งานได้:

PATH=/usr/local/cuda-11.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr /local/games:"/mnt/c/Program Files/Common Files/Oracle/Java/javapath":/mnt/c/Windows/System32:/mnt/c/Windows:/mnt/c/Windows/System32/wbem :/mnt/c/Windows/System32/WindowsPowerShell/v1.0:/mnt/c/Windows/System32/OpenSSH:"/mnt/c/Program Files/Git/cmd":/mnt/c/Python27:/mnt /c/Python27/Scripts:"/mnt/c/Program Files/PuTTY":"/mnt/c/Program Files/Docker/Docker/resources/bin":/mnt/c/ProgramData/DockerDesktop/version-bin: "/mnt/c/Users/amason1/AppData/Local/Programs/Microsoft VS Code/bin":/snap/bin

โดยทั่วไป คุณวางเครื่องหมายคำพูดคู่ (") รอบชื่อไดเร็กทอรีที่มีช่องว่าง เช่น:

/mnt/c/ไฟล์โปรแกรม/ไฟล์ทั่วไป/Oracle/Java/javapath

ดังนั้นพวกเขาจึงกลายเป็น

"/mnt/c/ไฟล์โปรแกรม/ไฟล์ทั่วไป/Oracle/Java/javapath" 

อีกทางหนึ่งคือ หลีกหนีช่องว่างด้วย \ ตัวละครดังใน:

/mnt/c/Program\ Files/Common\ Files/Oracle/Java/javapath 

โปรดตรวจสอบคำสั่งด้านบนอีกครั้งก่อนออกคำสั่ง มิฉะนั้นคุณอาจประสบปัญหา

Sunshine avatar
cn flag
ขอบคุณสำหรับความคิดเห็น.ฉันพลาดขั้นตอนหรือไม่? ฉันลองคำสั่งหลังจากตรวจสอบซ้ำแล้วซ้ำอีก แต่ฉันยังคงมีปัญหาเดิม ไม่มีเส้นทางใดที่มีช่องว่างล้อมรอบด้วยเครื่องหมายคำพูด ถ้าฉันพิมพ์ printenv หลังจากออกคำสั่ง ฉันพยายามหลีกเลี่ยงช่องว่างด้วยอักขระ \ ไม่มีเส้นทางที่อัปเดต ฉันยังเปิดหน้าต่างเทอร์มินัลใหม่หลังจากการเปลี่ยนแปลงเหล่านี้ จนถึงตอนนี้ ฉันไม่พบวิธีใช้การเปลี่ยนแปลงและยังคงอยู่ในระบบ
vanadium avatar
cn flag
เป็นเรื่องปกติที่เครื่องหมายคำพูดหรือเครื่องหมาย Escape จะไม่ปรากฏในตัวแปร PATH เอง ตอนนี้ฉันทราบแล้วว่าเราทุกคนเข้าใจคำถามของคุณผิด ใช้เครื่องหมาย Escape หรือเครื่องหมายอัญประกาศเดี่ยวเพื่อแทรกเครื่องหมายอัญประกาศในตัวแปรเอง แต่ต้องแน่ใจว่าคุณรู้ว่าเหตุใดคุณจึงต้องการสิ่งนี้
Sunshine avatar
cn flag
ฉันไม่แน่ใจว่าฉันทำอะไรผิด ฉันได้ลองใช้เครื่องหมายอัญประกาศเดี่ยวและเครื่องหมายอัญประกาศคู่พร้อมกับอักขระหลีก 2-3 ครั้งแล้ว ฉันกำลังทำงานกับสคริปต์บางตัวใน Ubuntu จากเครื่องมือ Kaldi ที่ใช้ PATH และเนื่องจากช่องว่างใน PATH ฉันจึงได้รับข้อผิดพลาด
Sunshine avatar
cn flag
ฉันขาดคำพูดเดียว ขอบคุณ. ที่อัปเดตเส้นทาง ขออภัย ฉันยังคงได้รับข้อผิดพลาด
Sunshine avatar
cn flag
ฉันกำลังทำงานกับสคริปต์ Kaldi บน Ubuntu ใน WSL มีใครสามารถแบ่งปันว่าทำไมหลังจากที่ฉันรีบูตเครื่องหรือเปิดเทอร์มินัล Ubuntu ใหม่ PATH ที่ฉันอัปเดตเพื่ออธิบายการเว้นวรรคในไดเร็กทอรีได้เปลี่ยนกลับเป็นไม่มีเครื่องหมายอัญประกาศซ้ำแล้วซ้ำอีก ฉันได้ลองใช้ \ เพื่อหลีกเลี่ยงระยะห่าง ฉันยังคงได้รับข้อผิดพลาดเหมือนกับว่ายังมีการเว้นวรรคในเส้นทางในเทอร์มินัลนั้น ฉันได้เพิ่มคำสั่ง echo เพื่อแสดงว่า PATH มีเครื่องหมายอัญประกาศคู่สำหรับการเว้นวรรค แต่ข้อผิดพลาดเดียวกันนี้เกิดขึ้นราวกับว่าการเว้นวรรคยังคงอยู่ในเทอร์มินัลปัจจุบันที่มีการอัปเดต
Sunshine avatar
cn flag
มีวิธีใดบ้างที่จะทำให้การอัปเดตเป็นแบบถาวรหรือเป็นเรื่องที่ขมวดคิ้ว?
uz flag
Jos
ฉันจะลบคำตอบของฉัน หากไม่มีความคิดเห็นอันมีค่าที่ตามมา
Score:1
ธง cn

เมื่อต้องการแทรกอัญประกาศคู่ตามตัวอักษรใน เส้นทาง ตัวแปร คุณล้อมรอบชื่อพา ธ ด้วย ' หรือหลีกอักขระพิเศษข้างหน้าด้วย \. ดังนั้น สิ่งใดสิ่งหนึ่งต่อไปนี้จะทำงาน:

PATH=...:'"/mnt/c/ไฟล์โปรแกรม/Git/cmd"':...

หรือ

PATH=...:\"/mnt/c/Program\ Files/Git/cmd\":...

คุณอาจมีเหตุผลที่ดีของตัวเองที่ต้องการทำเช่นนี้ เพิ่งรู้ว่าโฟลเดอร์ "/mnt/c/Program Files/Git/cmd" นั้นแตกต่างจากโฟลเดอร์ /mnt/c/ไฟล์โปรแกรม/Git/cmd. เส้นทางแรกไม่ใช่เส้นทางที่สมบูรณ์ ดังนั้นจะพบได้ก็ต่อเมื่อมีอยู่ในไดเร็กทอรีปัจจุบันเท่านั้น

Sunshine avatar
cn flag
ขอบคุณ. สิ่งนี้ได้ผล ตอนนี้ฉันต้องเข้าใจว่าทำไมสคริปต์ยังคงทำให้เกิดข้อผิดพลาดหลังจากเพิ่มเครื่องหมายคำพูดเพื่ออธิบายช่องว่างในไดเร็กทอรี

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา