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

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


5
ฉันจะรันคำสั่งหลายคำสั่งโดยใช้อาร์กิวเมนต์เดียวกันได้อย่างไร
ฉันสงสัยว่ามันเป็นไปได้ที่จะทำการกระทำลูกโซ่ใน terminal Ubuntu เช่น: action 1 on objectA . then action 2 on objectA โดยไม่ต้องทำซ้ำชื่อของ objectA อีกต่อไป ตัวอย่าง: touch file.js && openEditor "$1" หรืออะไรทำนองนั้น

3
./ (dot slash) เป็นคำสั่งหรือไม่
หลักของคำถาม: คำถามที่เกิดขึ้นในขณะที่ฉันไม่สามารถติดตั้งซอฟต์แวร์ดังนั้นฉันถามอย่างแท้จริงเกี่ยวกับ. / เพราะฉันไม่ทราบเกี่ยวกับมันและการส่งออก "ไม่พบคำสั่ง" ทำให้ฉันสับสนเกี่ยวกับสิ่งที่คำสั่งจริง บริบท: truecrypt-7.2-setup-x86ผมอยากจะติดตั้งไฟล์ คำแนะนำในการใช้คำสั่ง: sudo ./truecrypt-7.2-setup-x86 แต่ผลลัพธ์คือ: sudo: ./truecrypt-7.2-setup-x86: command not found UPDATE: เพื่อความสมบูรณ์ในการทดสอบฉันอยู่ในโฟลเดอร์ไฟล์ แต่ยังไม่ได้ทำให้ไฟล์เรียกทำงานได้ (chmod + x)


3
[co] หมายถึงอะไรในคำสั่ง“ rm -rf filename [co]”
สมมติว่าฉันมีสองไฟล์ใน/tmp: root@ubuntu:~# touch /tmp/hello.{pyc,py} root@ubuntu:~# ls /tmp/ hello.py hello.pyc ตอนนี้ให้เรียกใช้rm -rfคำสั่งด้วยตัวเลือก [co] root@ubuntu:~# rm -rf /tmp/hello.py[co] root@ubuntu:~# ls /tmp/ hello.py บางคนช่วยอธิบายสิ่งที่เกิดขึ้นที่นี่ได้ไหม? อะไรคือสิ่งที่[co]พารามิเตอร์? เราจะทำให้มันทำงานกับส่วนขยายอื่น ๆ ได้อย่างไร ถ้าฉันมีfoo.jsและfoo.coffeeไฟล์เราสามารถทำสิ่งที่ต้องการrm -rf /tmp/foo.coffe[co]ลบได้/tmp/foo.jsหรือไม่
16 command-line  bash  rm 

3
วิธีแทรกแท็บก่อนบรรทัดเอาต์พุตจากคำสั่งที่เรียกใช้งาน
แค่คำถามด่วน เป็นไปได้ไหมที่จะแท็บผลลัพธ์บน Ubuntu 16.04 LTS ฉันสร้างสองภาพด้านล่างเพื่อลองและอธิบายสิ่งที่ฉันหมายถึงโดยสิ่งนี้

2
ไม่ใช่ sudo ทางเลือกสำหรับ / usr / local / bin สำหรับสคริปต์ทั่วไป
ฉันคุ้นเคยกับการใส่สคริปต์ทั่วไป/usr/local/binเพื่อให้ฉันสามารถเรียกใช้งานได้จากทุกที่ด้วยเทอร์มินัล ตัวอย่างเช่นฉันสร้างเชลล์สคริปต์ชื่อ1ทำให้สามารถเรียกใช้งานได้ด้วยchmod +x 1และใส่ไว้ใน/usr/local/binและภายในสคริปต์ที่ฉันพิมพ์#!/bin/shในบรรทัดแรกแล้วตามด้วยคำสั่งของฉัน จากนั้นเป็นต้นมาสามารถใช้งานได้อย่างสะดวกและรวดเร็วโดยพิมพ์ 1Enter บนเทอร์มินัลจากภายในโฟลเดอร์ใด ๆ ปัญหาของฉันคือว่าฉันกำลังทำงานบนคอมพิวเตอร์ที่ไม่สามารถทำได้sudoและฉันไม่สามารถคาดหวังว่าจะได้รับมันดังนั้นฉันจึงไม่สามารถวางสคริปต์ไว้ใน/usr/local/binได้ ตัวเลือกของฉันคืออะไร? มีเส้นทางอื่นที่มีความสามารถ "เรียกใช้จากที่ใดก็ได้" เดียวกันซึ่งฉันสามารถเข้าถึงได้โดยไม่ต้องsudoวิธีอื่นเพื่อให้ได้สิ่งที่เทียบเท่าหรือไม่ คำตอบที่ได้รับการยอมรับสำหรับโพสต์นี้พูดว่า สำหรับสคริปต์ที่ผู้ใช้กำหนดให้ใช้ bin / ในไดเรกทอรีบ้านของคุณ ซึ่งฉันพยายาม แต่ไม่มี binโฟลเดอร์ในโฮมไดเร็กตอรี่ของฉันและเมื่อฉันสร้างมันขึ้นมาฉันยังไม่สามารถเรียกใช้สคริปต์จากที่อื่นได้ ฉันกำลังใช้งาน Ubuntu 12.04 LTS

3
การลบอินพุตกลับไปที่เครื่องหมายสแลชสุดท้าย
ฉันมักจะถูกโยนระหว่างหลายไฟล์บนเซิร์ฟเวอร์ ฉันจะเรียกใช้คำสั่งตัวอย่างต่อไปนี้ตามลำดับ: nano /web/site/path/to/file /web/site/script.py nano /web/site/path/to/anotherFile nano /web/site/path/to/yetAnotherFile /web/site/script.py nano /web/site/path/to/etc เพื่อไปจากnanoคำสั่งหนึ่งไปยังอีกฉันกำลังกดUpและBackspaceเพื่อแทนที่ส่วนสุดท้ายของเส้นทาง ปัญหานี้คือฉันขี้เกียจจริงๆ มีแป้นพิมพ์ลัด (หรือ Bashism) ที่สามารถ: รับแทนที่ด้วยพา ธ สุดท้ายที่ใช้ (ด้วยบิตพิเศษที่ส่วนท้าย) ลบในบรรทัดปัจจุบัน (เช่นหลังจากกดUp) กลับไปเป็นครั้งสุดท้าย/

2
printf หรือ echo ไหนดีกว่า
สำหรับการแสดงข้อความและข้อมูลการพิมพ์มีสองคำสั่งที่มีอยู่และ printf แล้วพวกเขาใช้ต่างกันอย่างไร ข้อไหนดีกว่ากัน?echo

2
ค้นหาและลบไฟล์ทั้งหมดที่ไม่มีนามสกุลด้วยโฟลเดอร์และโฟลเดอร์ย่อย
ฉันมีโฟลเดอร์ที่ไม่มีไดเรกทอรีย่อยประมาณ 500 รายการ มีถังขยะจำนวนมากที่พบได้ในนั้นและฉันต้องการทำความสะอาด ฉันได้ลบประเภทไฟล์บางอย่างที่ฉันไม่ต้องการเช่นรูปภาพด้วยคำสั่งนี้: find . -mindepth 1 -iname "*.jpg" -type f -delete อย่างไรก็ตามตอนนี้ฉันต้องการลบไฟล์ที่ไม่มีส่วนขยายทั้งหมด ไฟล์เช่น "รายการช็อปปิ้ง" intead ของ "Shopping list.txt" ฉันลองคำสั่งต่อไปนี้แล้ว แต่มันไม่ทำงาน: find . -mindepth 1 ! -iname "*.*" -type f -delete

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

1
จะตรวจสอบได้อย่างไรว่าได้ป้อนรหัสผ่าน sudo สำหรับเซสชันเทอร์มินัลนี้หรือไม่
ตามที่กล่าวไว้ในพาดหัวฉันต้องตรวจสอบว่ามีการป้อนรหัสผ่าน sudo สำหรับเทอร์มินัลเซสชันนี้ในเชลล์หรือไม่ (aka ถ้าฉันมีสิทธิ์ sudo ตอนนี้) ถ้าฉันมีฉันอยากจะทำสิ่งหนึ่งและถ้าฉันไม่มีมันก็ไม่ควรเตือนฉันให้ฉันทำสิ่งอื่น ดังนั้นในรหัสหลอกดูเหมือนว่านี้: if (sudo = true) echo "i got sudo" else echo "i dont have sudo" fi แต่คำสั่งทั้งหมดที่ฉันพบนี้จะแจ้งให้ฉันใส่รหัสผ่าน sudo เสมอเมื่อพยายามตรวจสอบ แนวคิดพื้นฐานคือสคริปต์สามารถ (และจะ) ขอรหัสผ่าน sudo ได้หลายที่ แต่ฉันไม่ต้องการพิมพ์ "สคริปต์จะขอรหัสผ่าน sudo ของคุณตอนนี้" ถ้ามันถูกป้อนแล้ว (ซึ่งหมายความว่ามันจะไม่ขอรหัสผ่าน sudo) หวังว่าใครบางคนสามารถช่วยฉันได้

2
เปิด Terminal ที่มีหลายแท็บและเรียกใช้แอปพลิเคชัน
ฉันใหม่สำหรับการเขียนสคริปต์ linux shell ฉันต้องการเขียนเชลล์สคริปต์ซึ่งจะเปิดเทอร์มินัลที่มีหลายแท็บ มันควรรันแอพไคลเอ็นต์ rtsp ในแต่ละแท็บ สำหรับสิ่งนี้ฉันได้ผ่านคำถามมาแล้วในฟอรัมนี้และพยายามที่จะเขียนโค้ดอย่างเบลโลว์ tab="--tab-with-profile=Default -e " cmd="java RunRTSPClient" for i in 1 2 3 4 5 do # foo="$foo $tab $cmd" done gnome-terminal $foo exit 0 สิ่งนี้กำลังทำงานและเปิดหน้าต่างเทอร์มินัลพร้อมแท็บ แต่ทันใดนั้นก็จะปิด ฉันไม่ได้รับข้อผิดพลาดใด ๆ

1
htop แสดงแอปพลิเคชั่นที่ซ้ำกันที่มีผลลัพธ์แปลกประหลาดมากเกิน 20,30,40 หรือมากกว่าดูที่การคว้าหน้าจอ
ฉันได้แนบภาพหน้าจอของ htop และมันเป็นผลลัพธ์ที่แปลกประหลาด ทุกคนสามารถอธิบายสิ่งที่เกิดขึ้นที่นี่ได้ไหม มันแสดงให้เห็นว่าแอป copy.com ใหม่นี้ใช้หน่วยความจำของฉันถึง 500% ถ้าคุณนับมัน

3
วิธีทำให้ชื่อผู้ใช้ในเทอร์มินัลเล็กลง?
เมื่อคุณเปิดเครื่องเทอร์มินัลจะแสดงชื่อผู้ใช้และชื่อเครื่อง romeo@romeo-Satellite-C660D:~$ในฐานะที่เป็นตัวอย่างที่แสดงให้เห็นว่าข้า มันน่ารำคาญจริงๆเพราะมันค่อนข้างใหญ่ ฉันสามารถทำให้ขนาดเล็กลงเช่นแสดงเฉพาะ romeo ได้หรือไม่ ฉันรู้ว่ามันฟังดูงี่เง่า แต่ฉันใหม่กับระบบปฏิบัติการ Unix

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