คำถามติดแท็ก command-line

คำถามเกี่ยวกับการใช้อินเตอร์เฟสบรรทัดคำสั่ง (CLI)

4
เรียกใช้คำสั่งอัตโนมัติทุก 5 นาที
ฉันยังใหม่กับการใช้ Linux และโดยเฉพาะอย่างยิ่งกับบรรทัดคำสั่ง ฉันจัดการเพื่อให้ Plex Media Server ทำงานและทำงานได้สำเร็จ แต่ฉันต้องเรียกใช้คำสั่งต่อไปนี้ทุก ๆ 5 นาทีเพื่อซิงค์กับ Amazon Drive ของฉัน การซิงค์ acd_cli ฉันได้ลองวิธีการต่าง ๆ เช่นสคริปต์ทุบตีและไม่สามารถใช้งานได้ ฉันต้องการคำสั่งด้านบนเพื่อให้ทำงานทุก ๆ 5 นาทีและรู้สึกว่ามีวิธีที่ง่ายซึ่งฉันไม่รู้

6
วิธีลบบรรทัดจากไฟล์ที่ไม่มีจุด?
ฉันมีไฟล์ที่มีข้อมูลรวมถึง URL แต่มีหลายสายที่ไม่ใช่ URL ฉันจะลบออกโดยใช้คำสั่งเทอร์มินัลของ Ubuntu ได้อย่างไร นี่คือไฟล์ตัวอย่างสำหรับการอ้างอิง: ข้อมูลตัวอย่าง com.blendtuts/S °= com.blengineering.www/:http ±= ฉันต้องการเอาท์พุท: com.blendtuts/S com.blengineering.www/:http เส้นที่ไม่ต้องการพิเศษนั้นไม่มีจุดใด ๆ ดังนั้นฉันต้องการลบบรรทัดที่ไม่มีจุด

2
เส้นประ Unity - มีอินเตอร์เฟสบรรทัดคำสั่ง (CLI) เพื่อทำการค้นหาหรือไม่?
บางครั้งฉันลงชื่อเข้าใช้จากระยะไกลผ่าน ssh ไปยังเดสก์ท็อประยะไกลของฉันและฉันต้องการเรียกแอปพลิเคชัน GUI ผ่าน ssh เพื่อแสดงจากระยะไกลบนแล็ปท็อปของฉัน อย่างไรก็ตามฉันไม่ทราบว่าชื่อไบนารีคืออะไรเพราะฉันมักจะเรียกแอปพลิเคชันจากเส้นประโดยใช้คำทั่วไป มีอินเตอร์เฟสบรรทัดคำสั่ง (CLI) ที่จะเป็นไปได้ในเทอร์มินัลเพื่อทำการค้นหาใน Unity Dash และรับในรายการผลลัพธ์ชื่อแอปพลิเคชันและพา ธ ไปยังคำสั่งที่ปฏิบัติการได้หรือไม่ ฉันต้องการสิ่งที่ต้องการ: # dash --search "disks" Name Executable Disks /usr/bin/gnome-disks

3
การใช้คำสั่ง exec ที่เป็นไปได้คืออะไร?
ฉันกำลังเรียนรู้execคำสั่ง ฉันรู้ว่าexecคำสั่งแทนที่กระบวนการที่เริ่มต้นแล้ว ดังนั้นจึงเป็นไปไม่ได้ที่จะกลับไปสู่กระบวนการซึ่งถูกแทนที่ด้วยexecคำสั่ง อาจกล่าวได้ว่ามันมีจุดประสงค์เพื่อทำให้เป็นไปไม่ได้ที่จะกลับไปสู่กระบวนการที่เริ่มต้นขึ้น แต่สิ่งอื่น ๆ ที่ใช้สำหรับการมีสิ่งที่ต้องการexecเป็นคำสั่งคืออะไร?

2
rsync: ซิงค์โฟลเดอร์ แต่เก็บไฟล์ไว้ในเป้าหมาย
ฉันเริ่มต้นด้วยrsyncและพยายามที่จะใช้เพื่อให้สองโฟลเดอร์ในระบบท้องถิ่นซิงค์ ฉันมีโฟลเดอร์ต้นทางซึ่งมีการเปลี่ยนแปลงเนื้อหาเมื่อเวลาผ่านไป (เพิ่มไฟล์บางไฟล์การเปลี่ยนแปลงบางอย่างและลบไปแล้ว) และโฟลเดอร์เป้าหมายที่ฉันต้องการเป็นมิเรอร์ของแหล่งที่มา ดังนั้นสิ่งที่ฉันลองใช้ rsync เช่นนี้: rsync -a --delete "${source_dir}" "${target_dir}"; สิ่งนี้จะทำให้เนื้อหาของเป้าหมายเหมือนกันกับเนื้อหาของแหล่งที่มา อย่างไรก็ตามฉันต้องการเพิ่มไฟล์บางไฟล์ไปยังเป้าหมายและไม่ไปยังแหล่งที่มา แต่ฉันไม่ต้องการให้ลบทุกครั้งที่ฉันทำ rsync ในทางกลับกันไฟล์ที่เคยซิงค์และถูกลบในแหล่งที่มาควรจะยังคงถูกลบ มีวิธีการทำเช่นนี้โดยไม่ต้องเปลี่ยนคำสั่งสำหรับทุกไฟล์ที่ฉันต้องการยกเว้นหรือไม่? อัปเดต : ฉันควรระบุว่าไม่ จำกัด rsync ถ้าโปรแกรมอื่นทำให้งานเสร็จสมบูรณ์ ฉันแค่พยายามแก้ปัญหานี้โดยใช้ rsync

7
พิมพ์คำที่มีสตริงและคำแรก
ฉันต้องการค้นหาสตริงในบรรทัดข้อความและพิมพ์สตริง (ระหว่างช่องว่าง) และคำแรกของวลี ตัวอย่างเช่น: "นี่คือบรรทัดข้อความเดียว" "อีกสิ่งหนึ่งที่" "จะดีกว่าถ้าคุณลองอีกครั้ง" "ดีกว่า" รายการของสตริงคือ: ข้อความ สิ่ง ลอง ดีกว่า สิ่งที่ฉันพยายามคือการได้รับตารางเช่นนี้ ข้อความ [แท็บ] อีกสิ่ง [แท็บ] ลอง [แท็บ] ดีกว่า ฉันลองใช้ grep แต่ไม่มีอะไรเกิดขึ้น ข้อเสนอแนะใด ๆ

3
ฉันสามารถใช้ '!!' ในนามแฝงหรือสคริปต์?
ใน Terminal ฉันสามารถใช้!!ซึ่งจะอ้างอิงคำสั่งก่อนหน้าของฉัน เป็นไปได้ไหมที่จะใช้สิ่งนี้ในนามแฝง? ฉันลองแล้ว แต่สิ่งที่เกิดขึ้นคือเครื่องหมายอัศเจรีย์คู่ถูกตีความตามตัวอักษรอย่างแท้จริง สิ่งที่ฉันต้องการมีความเป็นไปได้คือ: ฉันป้อนคำสั่งบางอย่าง ฉันพิมพ์นามแฝงที่จะรวมสิ่งที่ป้อนในขั้นตอนที่ 1 หากมีวิธีการใช้สคริปต์ที่ยอมรับได้เช่นกัน

2
ฉันจะจัดกลุ่ม windows ให้เป็นหนึ่งเดียวได้อย่างไร
ฉันมีหน้าต่างสองบาน A และ B เป็นไปได้ไหมที่จะเชื่อมโยงหน้าต่างสองบานเข้าด้วยกันดังนั้นการสลับไปที่ A จะเพิ่ม B หรือการสลับไปที่ B จะเป็นการเพิ่ม A หรือไม่ ฉันเข้าใจว่าการใช้เวิร์กสเปซหลายตัวเป็นทางเลือกอื่น แต่สงสัยว่ามันจะเป็นไปได้ไหม

2
ไม่มีเอาต์พุตจากบริการคำสั่ง start / stop / restart
ฉันเพิ่งติดตั้ง Ubuntu 16.04 LTS และพบว่าเมื่อฉันเรียกใช้ usr@server:~$ sudo service <servicename> restart usr@server:~$ บริการเริ่มต้นใหม่ (ฉันสามารถดูสถานะด้วยservice <servicename> status) แต่เชลล์กลับไปที่บรรทัดคำสั่งโดยตรงโดยไม่ต้องมีการคาดหวัง: * Stopping <servicename> [ OK ] * Starting <servicename> [ OK ]

2
ฉันจะลบเป้าหมายของลิงก์สัญลักษณ์โดยไม่ลบลิงก์เองได้อย่างไร
ฉันมีการเชื่อมโยงสัญลักษณ์ที่ชี้ไป~/Desktop/test.txt~/rendu/test.txt ฉันรู้เส้นทางเท่านั้น~/Desktop/test.txtฉันต้องการวิธีที่รวดเร็วในการลบ~/rendu/test.txtโดยไม่ต้องลบลิงก์สัญลักษณ์ สำหรับผู้ที่ต้องการทราบสาเหตุ: ฉันมีไฟล์ชื่อcrypted.xxxบนเดสก์ท็อปของฉันซึ่งถูกเข้ารหัสและมีรหัสผ่านของฉัน เมื่อฉันต้องการอัปเดตไฟล์ที่เข้ารหัสของฉันฉันจะถอดรหัสและสร้างcrypted.txtในไดเรกทอรีพิเศษ ดังนั้นฉันจึงเชื่อมโยงไปยังไฟล์นั้นบนเดสก์ท็อปของฉันเพื่อเหตุผลในทางปฏิบัติ แต่หลังจากดูที่ฉันcrypted.txtฉันต้องการลบอย่างรวดเร็วcrypted.txt(แต่ไม่ใช่ลิงค์ในเดสก์ท็อป)

4
การอ่านและการเขียนไฟล์: คำสั่ง tee
เป็นที่ทราบกันดีว่าคำสั่งเช่นนี้: cat filename | some_sed_command >filename ลบไฟล์ชื่อไฟล์เนื่องจากการเปลี่ยนเส้นทางเอาต์พุตที่ถูกเรียกใช้งานก่อนคำสั่งทำให้ชื่อไฟล์ถูกตัดทอน หนึ่งสามารถแก้ปัญหาด้วยวิธีต่อไปนี้: cat file | some_sed_command | tee file >/dev/null แต่ฉันไม่แน่ใจว่าสิ่งนี้จะใช้ได้ในทุกกรณี: จะเกิดอะไรขึ้นถ้าไฟล์ (และผลลัพธ์ของคำสั่ง sed) มีขนาดใหญ่มาก ระบบปฏิบัติการจะหลีกเลี่ยงการเขียนทับเนื้อหาบางส่วนที่ยังไม่ได้อ่านได้อย่างไร? ฉันเห็นว่ายังมีคำสั่งฟองน้ำซึ่งควรทำงานในกรณีใด ๆ : มันเป็น "ปลอดภัย" กว่าที
10 command-line  bash  tee 

2
การติดตั้ง wxwidgets เวอร์ชันล่าสุด
ฉันกำลังพยายามที่จะติดตั้งรุ่นล่าสุดของ wxWidgets ผ่านทางสถานีและปฏิบัติตามคำแนะนำเหล่านี้ แต่เมื่อฉันสำรวจไปยังโฟลเดอร์โฟลเดอร์ที่ถูกสร้างขึ้นเรียกว่า/usr/include wx-3.0-unofficialนี่เป็นโฟลเดอร์ที่ถูกต้องหรือไม่ นอกจากนี้หากฉันต้องการติดตั้ง v3.10.0 ฉันจะทำคำสั่งเดียวกัน แต่แทนที่ 3.0 ด้วย 3.1 หรือไม่ โดยทั่วไปคำสั่งเหล่านี้ถูกต้องที่ฉันควรใช้เพื่อติดตั้ง wxwidgets หรือมีวิธีที่ดีกว่า บนหน้าคำสั่งมีดังนี้ (ฉันข้ามส่วนในการติดตั้ง IDE): sudo apt-add-repository 'deb http://repos.codelite.org/wx3.0.2/ubuntu/ trusty universe' apt-get update apt-get install libwxbase3.0-0-unofficial \ libwxbase3.0-dev \ libwxgtk3.0-0-unofficial \ libwxgtk3.0-dev \ wx3.0-headers \ wx-common \ libwxbase3.0-dbg \ libwxgtk3.0-dbg \ wx3.0-i18n \ wx3.0-examples \ wx3.0-doc …

5
วิธีรันคำสั่งใน gnuplot โดยใช้เชลล์สคริปต์
สิ่งที่ฉันต้องการจะทำคือเขียนสคริปต์ที่เปิดตัวโปรแกรมก่อนแล้วจึงบอกให้รันคำสั่งจำนวนมากแล้วออกจากโปรแกรม ให้ไปด้วยตัวอย่าง ฉันเขียนสคริปต์นี้myscript.shและมันไม่ทำงานอย่างที่ฉันต้องการ สิ่งที่มันเป็นเพียงเรียกใช้ gnuplot และรอให้มันเลิกแล้วรันคำสั่งอื่น ๆ ; ซึ่งสร้างข้อผิดพลาดอย่างเห็นได้ชัด #!/bin/bash gnuplot plot sin(x) pause -1 quit ฉันคิดว่ามันชัดเจนว่าฉันกำลังพยายามทำอะไร ถ้าไม่เช่นนั้นแจ้งให้เราทราบในความคิดเห็น

4
คุณจะนับคำที่เกิดขึ้นในไฟล์ทั้งหมดในไดเรกทอรีปัจจุบันได้อย่างไร
คุณจะนับคำที่เกิดขึ้นในไฟล์ทั้งหมดในไดเรกทอรีปัจจุบันได้อย่างไร - และไดเรกทอรีย่อย (?) ฉันได้อ่านสิ่งนี้แล้วคุณจะใช้grep; คำสั่งที่แน่นอนคืออะไร? นอกจากนี้ยังสามารถใช้คำสั่งข้างต้นได้หรือไม่


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