คำถามติดแท็ก shell

เชลล์เป็นอินเตอร์เฟสบรรทัดคำสั่งของ Unix คุณสามารถพิมพ์คำสั่งในเชลล์แบบโต้ตอบหรือเขียนสคริปต์เพื่อทำงานอัตโนมัติ ใช้แท็กนี้สำหรับคำถามที่ใช้กับ / bin / sh และเชลล์ที่เข้ากันได้มากที่สุด (ash, bash, ksh, zsh, …) สำหรับเชลล์สคริปต์ที่มีข้อผิดพลาดโปรดตรวจสอบใน http://shellcheck.net ก่อนโพสต์ที่นี่

1
ฉันจะได้รับรายชื่อแบบยาวสำหรับไดเรกทอรีเดียวได้อย่างไร
ฉันต้องการที่จะเห็นรายชื่อยาวสำหรับไดเรกทอรีเดียว เมื่อฉันพิมพ์ls -lhaฉันจะเห็นสิ่งนี้: drwxrwxr-x 4 username groupname 4.0K 2010-08-05 09:55 files drwxrwxr-x 7 username groupname 4.0K 2010-08-05 14:25 trunk drwxrwxr-x 8 username groupname 4.0K 2010-08-05 16:02 phpincludes drwxrwxr-x 11 username groupname 4.0K 2010-07-26 12:31 phpMyAdmin-3.3.5-english อย่างไรก็ตามเมื่อฉันพิมพ์ls -lha phpMyAdmin-3.3.5ฉันจะได้รับรายชื่อของเนื้อหาของไดเรกทอรี ฉันจะพิมพ์คำสั่งเพื่อให้เห็นได้อย่างไร drwxrwxr-x 11 username groupname 4.0K 2010-07-26 12:31 phpMyAdmin-3.3.5-english ? ฉันต้องการทำสิ่งนี้กับไดเรกทอรี symlinked …

1
การทดแทนกระบวนการ bash ด้วยไฟล์ชั่วคราว
บางโปรแกรมต้องการไฟล์ของพวกเขาจะ seekable เช่นobjdumpไม่ $ objdump -D -b binary -m i8086 <(echo 0xea 0x5b 0xe0 0x00 0xf0|xxd -r -p) objdump: Warning: '/proc/self/fd/11' is not an ordinary file มันจะสะดวกที่จะมีการทดแทนกระบวนการใช้ไฟล์ชั่วคราว ฉันสามารถดูได้ในหน้า man ที่ทุบตีสามารถย้อนกลับไปยังไฟล์ชั่วคราวด้วยการทดแทนกระบวนการ แต่ฉันสามารถขอให้เขาใช้ไฟล์ชั่วคราวได้หรือไม่? เช่นเดียวกับ'szsh=() $ objdump -D -b binary -m i8086 =(echo 0xea 0x5b 0xe0 0x00 0xf0|xxd -r -p) /tmp/zsh1u1Nrw: file format …

2
ssh: execute คำสั่งบนรีโมตโฮสต์แทนเชลล์ล็อกอิน
ฉันกำลังเชื่อมต่อกับremote-serverจาก localhost remote-serverและฉันต้องการที่จะดำเนินการคำสั่งบน ทำงานตามที่คาดไว้: ssh remote-server "hostname" remote-server ฉันสับสน. เหตุใดจึงส่งคืนโลคัลโฮสต์แทนชื่อโฮสต์ของรีโมตเซิร์ฟเวอร์ ssh remote-server "print $HOST" localhost
2 shell  ssh 

1
ฉันจะถ่ายโอนไฟล์ผ่าน ssh และเปลี่ยนแปลงการอนุญาตบนเซิร์ฟเวอร์ระยะไกลได้อย่างไรโดยไม่ต้องเข้าสู่ระบบสองครั้ง
guy@home~% scp file.* guy@server.server.com:/users/guy/public_html/kool-stuff/ ตกลงดังนั้นการถ่ายโอนไฟล์บางไฟล์ จากนั้นฉันมักจะต้องเข้าสู่ระบบในเทอร์มินัลอื่นและทำสิ่งนี้เพื่อให้สามารถมองเห็นได้บนเว็บ (อาจเป็นเพราะการตั้งค่าบนเซิร์ฟเวอร์หรือไม่ฉันไม่รู้) guy@server~$ cd ~/public_html/kool-stuff guy@server~$ chmod 755 ./file.* ฉันสามารถทำได้ทั้งสองอย่างในคำสั่งเดียวบนเครื่องของฉันหรือไม่?
1 shell  ssh  scp  chmod 

1
การวิเคราะห์คำศัพท์สำหรับการมอบหมายในเชลล์ POSIX
สำหรับการวิเคราะห์คำศัพท์ในเชลล์ POSIX จาก http://pubs.opengroup.org/onlinepubs/007904875/utilities/xcu_chap02.html 7. [การกำหนดชื่อคำสั่งก่อนหน้า] [เมื่อคำแรก] หากโทเค็นไม่มีอักขระ '=' กฎ 1 จะถูกนำไปใช้ มิฉะนั้นจะต้องใช้ 7b ข [ไม่ใช่คำแรก] หากโทเค็นมีอักขระ: - ถ้ามันเริ่มต้นด้วย '=' โทเค็นคำจะถูกส่งกลับ - หากตัวละครทั้งหมดที่อยู่ก่อนหน้า '=' เป็นชื่อที่ถูกต้อง (ดูที่ XBD มาตรา 3.231) โทเค็น ASSIGNMENT_WORD จะถูกส่งกลับ (อักขระที่ยกมาไม่สามารถมีส่วนร่วมในการสร้างชื่อที่ถูกต้อง) - ไม่เช่นนั้นจะไม่ระบุว่าเป็น ASSIGNMENT_WORD หรือ WORD ที่ส่งคืน การมอบหมายให้ NAME จะเกิดขึ้นตามที่ระบุไว้ในส่วน 2.9.1 'คำแรก' หมายถึงอะไร? กรณีใดคือ 'เมื่อคำแรก' กรณีใด 'ไม่ใช่คำแรก' 'เมื่อคำแรก' …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.