Unix & Linux

คำถาม & คำตอบสำหรับผู้ใช้ Linux, FreeBSD และระบบปฏิบัติการ Un * x อื่น ๆ

2
วิธีการเปลี่ยนจาก ssh เป็นเชลล์ในเครื่องของฉันเป็นการชั่วคราว
ฉันใช้ cygwin และใช้กับ ssh เพื่อเข้าสู่เซิร์ฟเวอร์ ubuntu บางครั้งฉันต้องการเปลี่ยนกลับเป็น cygwin ของฉันแล้วเปลี่ยนเป็นเชลล์ Ubuntu ได้อย่างรวดเร็ว ทำอย่างไร
12 command-line  ssh 

1
เป็นตัวอย่างที่ดีของสคริปต์ทุบตีเพื่อศึกษาเพื่อเรียนรู้วิธีการเข้ารหัสที่ดีคืออะไร?
ฉันได้เรียนรู้พื้นฐานของการเขียนโปรแกรมในทุบตี ฉันต้องการศึกษาตัวอย่างของสคริปต์ทุบตีเพื่อที่ฉันจะได้เรียนรู้นิสัยที่ดีในการเขียนสคริปต์ทุบตี โดยเฉพาะอย่างยิ่งฉันสนใจตัวอย่างของสคริปต์ทุบตีที่แสดง: วิธีการประมวลผลข้อโต้แย้งและเรียกการทำงานตามเงื่อนไข วิธีตรวจสอบข้อผิดพลาดในการป้อนข้อมูล วิธีดำเนินการให้เสร็จสิ้นคำสั่ง วิธีจัดระเบียบสคริปต์ทุบตีเป็นฟังก์ชันคำสั่งและอื่น ๆ วิธีการนำเสนอข้อความช่วยเหลือ ตัวอย่างเช่นผมได้เรียนรู้มากจากautorandr บน GitHub มีสคริปต์หรือที่เก็บสคริปต์อื่น ๆ ที่ฉันสามารถเรียนรู้เกี่ยวกับอนุสัญญาการใช้สคริปต์ทุบตีได้หรือไม่?
12 bash 

4
ฉันจะแยกไฟล์เป็นค่าเริ่มต้นด้วย rsync ได้อย่างไร
ฉันจะแยกไฟล์เป็นค่าเริ่มต้นด้วย rsync ได้อย่างไร นี่คือวิธีที่ rsync ไวยากรณ์ปกติของฉันเริ่มต้น: rsync --exclude ".ht*" --exclude "error_log" --exclude ".DS*" --exclude "old" ... ฉันเคยเห็นการกล่าวถึงการกำหนดค่า/etc/rsyncd.confไฟล์จำนวนมากแต่อาจจะดีกว่าสำหรับ daemon มากกว่าคำสั่ง rsync เป็นไปได้ไหมที่จะมีการยกเว้นค่าเริ่มต้นสำหรับ rsync เมื่อถูกเรียกจากบรรทัดคำสั่งเช่นในไวยากรณ์เริ่มต้นของฉันด้านบน

2
วิธีสร้างไฟล์ภาพเปล่าจำนวนมาก?
สำหรับการทดสอบฉันต้องสร้างภาพ jpg-1700 (แม้แต่ที่ว่างเปล่า) อย่างรวดเร็วในขนาดที่กำหนด 1,000x706 ฉันสงสัยว่าเราสามารถทำได้ด้วยเชลล์สคริปต์หรือโปรแกรม (เช่น ImageMagick) ฉันหวังว่าพวกเขาเรียกว่าimg_0.jpg, img_1.jpg... มีคนรู้วิธีแก้ปัญหาง่าย ๆ ?

2
มี linux ที่เทียบเท่ากับคำสั่ง Mac OS X“ textutil” หรือไม่?
ใน Mac OS X มีคำสั่งที่มีประโยชน์มากเรียกtextutilได้ว่าสามารถเรียกใช้จากเทอร์มินัลและอนุญาตให้แปลงเอกสารจากรูปแบบอื่น บางครั้งฉันก็ใช้มันเพื่อแปลงไฟล์ RTF เป็น HTML แต่ก็สามารถแปลง doc, docx, odt และรูปแบบอื่น ๆ ฉันเคยเชื่อว่ามันเป็นคำสั่ง unix มาตรฐาน แต่ฉันไม่สามารถหามันได้และเมื่อฉันพยายามเขียนsudo apt-get install textutilUbuntu บอกว่ามันไม่มีความคิดว่าtextutil... คืออะไรฉันอาจจะค้นหาคำสั่งผิดหรือเปล่า? คุณรู้หรือไม่ว่ามีบางสิ่งที่คล้ายคลึงกันสำหรับ Linux ฉันต้องเรียกใช้คำสั่งนั้นจากสคริปต์ที่จะทำงานบนเซิร์ฟเวอร์ linux

7
พิมพ์อาร์กิวเมนต์ของเชลล์ในลำดับย้อนกลับ
ฉันติดอยู่นิดหน่อย งานของฉันคือการพิมพ์อาร์กิวเมนต์ไปยังสคริปต์ของฉันในลำดับย้อนกลับยกเว้นที่สามและสี่ สิ่งที่ฉันมีคือรหัสนี้: #!/bin/bash i=$# for arg in "$@" do case $i in 3) ;; 4) ;; *) eval echo "$i. Parameter: \$$i";; esac i=`expr $i - 1` done ในขณะที่ฉันเกลียด eval (ทักทาย PHP) ฉันกำลังมองหาวิธีการแก้ปัญหาโดยไม่ได้ทำ แต่ฉันไม่สามารถหามันได้ ฉันจะกำหนดตำแหน่งของการโต้แย้งแบบไดนามิกได้อย่างไร PS: มันไม่ใช่การบ้านฉันกำลังเรียนรู้การทำข้อสอบดังนั้นฉันจึงพยายามแก้ข้อสอบเก่า

3
wc -L รายงานความยาวบรรทัด 8 สำหรับ tab-char ข้อผิดพลาดหรือคุณสมบัติ?
-Lเป็นคุณสมบัติที่มีประโยชน์ของwcหรือดังนั้นฉันคิดว่า มันพิมพ์ความยาวของบรรทัดที่ยาวที่สุด ด้วยเหตุผลบางอย่างมันขยายแท็บเดี่ยวไบต์ถึงความยาว 8 มีวิธีการตั้งค่านี้เพื่อไม่ "ขยาย" แท็บ? และอะไรคือเหตุผลเบื้องหลังการขยายตัวนี้ echo -n $'\t' | wc -L เอาท์พุท 8 wc (coreutils ของ GNU) 7.4 bash ของ GNU, รุ่น 4.1.5

3
บัญชีเชลล์ฟรีปลอดภัยหรือไม่
ฉันพยายามระบุว่าบัญชี shell ที่ให้บริการโดยshellmix.com ปลอดภัยแค่ไหน ฉันไม่เคยใช้ตัวเอง แต่ต้องการแนะนำให้คนที่สนใจเรียนรู้การเขียนโปรแกรมเชลล์ พวกเขาปลอดภัยที่จะใช้เพื่อจุดประสงค์นี้หรือไม่? ฉันควรระวังอะไร

4
สถานที่ที่จะนำพื้นที่สว็อป, จุดเริ่มต้นหรือจุดสิ้นสุดและคำถามสว็อปอื่น ๆ
ฉันจะใส่ swap ได้ที่ไหน การติดตั้ง Debian มี 2 ตัวเลือก: (1) ที่ส่วนท้ายหรือ (2) ที่จุดเริ่มต้นของพื้นที่ดิสก์ อะไรดีที่สุด จำนวน swap ที่ดีที่สุดคืออะไรเมื่อคอมพิวเตอร์ของฉันมี RAM 512Mb ฉันควรมี swap มากกว่าหนึ่งอันหรือไม่ ฉันควรกำหนดพื้นที่สวอปเป็นโลจิคัลหรือพาร์ติชันหลักหรือไม่ ฉันกำลังติดตั้ง Debian 6 การทดสอบ 32 บิตบนดิสก์ 40Gb
12 swap 

3
เหตุใดการเรียงลำดับไฟล์ตามเวลาเข้าถึงจึงไม่ทำงาน
ฉันพยายามใช้คำสั่ง ls --time=atime มันทำงานในไดเรกทอรีเดียว แต่ไม่ได้ทำงานในไดเรกทอรีอื่น ฉันเปิดไฟล์บางไฟล์เป็นกลุ่ม, evince และแอปพลิเคชั่นอื่น ๆ แต่หลังจากเวลาเข้าถึงไฟล์คำสั่งไม่เปลี่ยน เมื่อฉันพิมพ์touch file.txtเวลาเข้าถึงจะเปลี่ยนไป แต่เมื่อฉันพิมพ์vim file.txtเวลาเข้าถึงจะไม่เปลี่ยนแปลง เกิดอะไรขึ้นที่นี่?
12 filesystems  files  ls  atime 

2
การตั้งค่า vim filetype ด้วย modeline ไม่ทำงานอย่างที่คาดไว้
ตามคำตอบที่ได้รับการยอมรับสำหรับคำถามนี้ฉันพยายามใช้ modelines in vim เพื่อบังคับให้มีการตรวจจับประเภทไฟล์ในบางไฟล์ ตัวอย่างเช่นที่ด้านบนของไฟล์ชื่อgitconfig(หมายเหตุไม่มีผู้นำ.) ฉันมีบรรทัดต่อไปนี้: # vim: set filetype=gitconfig : modelineเปิดใช้งานในระบบของฉัน อย่างไรก็ตามเมื่อฉันเปิดไฟล์เป็นกลุ่มset filetype?จะให้ผลตอบแทนconfมากกว่าที่คาดgitconfigไว้ เป็นไปได้ไหมว่าส่วนอื่น ๆ ของการกำหนดค่า vim ของฉัน (เช่น filetype.vim) ทำให้เกิดพฤติกรรมแปลก ๆ นี้? แก้ไขเพื่อตอบสนองต่อความคิดเห็น: set compatible? ผลตอบแทน nocompatible set modeline? ผลตอบแทน modeline verbose set filetype? ผลตอบแทน: filetype=conf Last set from /usr/share/vim/vim73/filetype.vim ฉันไม่เข้าใจว่าทำไมปลั๊กอินชนิดกว้าง ๆ ของระบบจะแทนที่สิ่งที่ฉันตั้งไว้ในไฟล์เอง หมายเหตุสุดท้ายสุดท้าย: นี่เป็นเวอร์ชั่น Vim 7.3 …
12 vim  osx 

4
คำสั่ง“ ผู้โทร” คืออะไร?
ฉันใช้ Ubuntu 10.10 กับ openbox ที่ทำงานอยู่ด้านบน ฉันสังเกตเห็นคำสั่งวันนี้ที่เรียกว่าcallerแต่ไม่มีหน้าคนมันไม่ตอบสนองต่อการป้อนข้อมูลใด ๆ (หรือ - ช่วย) และที่ไม่พบมัน ความคิดอะไรมันคืออะไร?

3
วิธีการแฮช md5 ส่งผลให้เชลล์
ฉันกำลังมองหาวิธีง่ายๆในการทำให้ผลลัพธ์md5sumเป็นคำสั่งอื่น บางสิ่งเช่นนี้ $echo -n 'test' | md5sum | ... ปัญหาของฉันคือmd5sumเอาต์พุตไม่เพียง แต่การแฮชของสตริงเท่านั้น แต่ยังเป็นไฮเปอร์ซึ่งแสดงว่าอินพุตมาจาก stdin ฉันตรวจสอบไฟล์ man และไม่พบการตั้งค่าสถานะใด ๆ เพื่อควบคุมเอาต์พุต

1
การวัดการใช้งานดิสก์ I / O ของโปรแกรม
time เป็นคำสั่งที่ยอดเยี่ยมถ้าคุณต้องการที่จะคำนวณเวลาของ CPU ที่คำสั่งที่ได้รับ ฉันกำลังมองหาสิ่งที่คล้ายกันซึ่งสามารถวัดดิสก์ I / O ของโปรแกรมและลูก ๆ ควรแยกความแตกต่างระหว่าง I / O ที่แคช (และไม่ทำให้ดิสก์หมุน) และ I / O ที่ไม่ได้แคช ดังนั้นฉันต้องการทำ: iomeassure my_program my_args และรับเอาต์พุตคล้ายกับ: Cached read: 10233303 Bytes Cached write: 33303 Bytes # This was probably a tmp file that was erased before making it to the disk …
12 io  time  measure 

2
ใน `ขณะที่ IFS = อ่าน .. 'ทำไม IFS ถึงไม่มีผลกระทบ?
ฉันอาจมีบางอย่างผิดปกติ แต่ดูเหมือนว่าฉันเชื่อว่าการตั้งค่า IFS เป็นหนึ่งในคำสั่งในรายการที่ต้องทำ / เสร็จไม่มีผลอย่างแน่นอน IFS ภายนอก (ภายนอกwhileโครงสร้าง) จะมีชัยในตัวอย่างทั้งหมดที่แสดงในสคริปต์ด้านล่าง .. เกิดอะไรขึ้นที่นี่? ฉันเข้าใจผิดว่า IFS ทำอะไรในสถานการณ์นี้หรือไม่? ฉันคาดว่าผลลัพธ์การแบ่งอาร์เรย์จะเป็นไปตามที่แสดงในคอลัมน์ "คาดหวัง" #!/bin/bash xifs() { echo -n "$(echo -n "$IFS" | xxd -p)"; } # allow for null $IFS show() { x=($1) echo -ne " (${#x[@]})\t |" for ((j=0;j<${#x[@]};j++)); do echo -n "${x[j]}|" done echo …

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