Unix & Linux

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

7
`คำสั่ง '
มีคำสั่งที่สามารถใช้เพื่อเน้น (กับสีข้อความตัวหนาหรือกลับ - / เบื้องหน้า) สายอักขระที่เฉพาะเจาะจงใน stdin ในขณะที่ผ่านสายทั้งหมดเพื่อ stdout? ฉันกำลังคิดที่จะสร้างมันแต่ฉันจะใช้มันถ้ามันมีอยู่แล้ว คุณสมบัติที่พึงประสงค์: สตริงเน้นที่แยกจากกันจะถูกเน้นด้วยวิธีที่แตกต่างกันโดยอัตโนมัติ ตัวอย่างเช่นสตริงแรกจะถูกเน้นด้วยสีแดงที่สองในสีเขียวที่สามในสีฟ้าโดยไม่มีการกำหนดค่าด้วยตนเอง ตรวจจับการสนับสนุนสีและย้อนกลับไปที่วิธีการเน้นตัวหนา / กลับ / / อื่น ๆ ที่มีอยู่ อนุญาตให้จับคู่ของนิพจน์ทั่วไปและสตริงตัวอักษร ทำสิ่งที่ฉลาดกว่าโดยเฉพาะถ้าการจับคู่ซ้อนทับกันเช่น "foobar" และ "barbar" ไม่มีการแก้ไขใด ๆ ระหว่าง stdin และ stdout ยกเว้นการเพิ่มรหัสสี

3
วิธีเปลี่ยนชื่อโฮสต์
ระหว่างการติดตั้งเดเบียนฉันตั้งชื่อโฮสต์เป็นค่าที่ไม่ถูกต้องและตอนนี้ฉันต้องการแก้ไขให้ถูกต้อง
11 debian  hostname 

6
Bash: แสดงสถานะทางออกในพรอมต์:
GREEN="\e[1;32m" RED="\e[1;31m" NONE="\e[m" get_exit_status(){ es=$? if [ $es -eq 0 ] then echo -e "${GREEN}${es}${NONE}" else echo -e "${RED}${es}${NONE}" fi } get_path(){ #dummy function echo "PATH" } PROMPT_COMMAND='exitStatus=$(get_exit_status)' ต่อไปนี้ให้ exitStatus ที่ถูกต้อง แต่ตัวแปรสีไม่ได้ถูกขยาย: PS1='${RED}\h $(get_path) ${exitStatus}${NONE} ' อย่างไรก็ตามสีด้านล่างให้สีแก่ฉัน แต่สถานะการออกไม่ได้อัปเดต: PS1="${RED}\h $(get_path) ${exitStatus}${NONE} " วิธีที่ถูกต้องในการทำเช่นนี้คืออะไร? ฉันจะแก้ไขได้อย่างไรเพื่อให้ exitStatus และสีทั้งสองทำงานได้?
11 bash  prompt 

5
ไม่สามารถ ssh ในเครื่องระยะไกลโดยใช้เชลล์สคริปต์ใน Crontab
ด้านล่างเป็นสคริปต์ที่ฉันพยายามเรียกใช้ซึ่งทำงานโดยไม่มีปัญหาใด ๆ for i in `seq 200 2100` do usr=(`ssh -t -t -o ConnectTimeout=60 machine$1 finger | tail -1 | awk '{print$1}'`) echo $usr done แต่เมื่อฉันเพิ่มลงใน crontab มันไม่ได้ให้ผู้ใช้ 22 12 * * * sh /home/subrahmanyam/Scripts/who.sh กรุณาให้ความคิดของคุณ ..... อาจเป็น cron อสูรกำลังทำงานดังนั้นเราจำเป็นต้องรวมไบนารีบางอย่าง ... ?

4
vim: ฉันสามารถทำ * only * y ให้ทำสำเนาได้หรือไม่
ฉันเรียนรู้ที่จะชอบเป็นกลุ่ม แต่สิ่งหนึ่งที่ฉันยังไม่ได้รับอย่างเต็มที่คือสถานการณ์การคัดลอกและการวาง ในโปรแกรมแก้ไขข้อความมักเกิ้ลฉันจะCtrl- Cคัดลอกข้อความแล้วแก้ไข / ลบแล้ววางข้อความที่อื่น อย่างไรก็ตามในที่เป็นกลุ่มฉันไม่สามารถทำเช่นนี้ได้เพราะหลังจากที่ฉันคัดลอกข้อความด้วยyการแก้ไขข้อความมักเกี่ยวข้องdและxทำให้ข้อความต้นฉบับของฉันหายไป มีวิธีการทำdและxไม่คัดลอกข้อความหรือไม่ มิฉะนั้นฉันจะใช้คุณสมบัติ vim เหล่านี้ได้อย่างไร?
11 vim 

2
Linux จัดการแบบอักษรอย่างไร
เมื่อฉันใช้ Windows (นานมากแล้ว!) และ Mac OS X มักจะมี "ที่เก็บ" แบบอักษรส่วนกลางที่ใช้ร่วมกันและเข้าถึงได้โดยระบบปฏิบัติการและโปรแกรมทั้งหมด (โฟลเดอร์แบบอักษรใน Windows และแบบอักษรสมุดใน Mac OS X) แบบอักษรมีการจัดการใน Linux อย่างไร มีร้านค้าส่วนกลางสำหรับแบบอักษรที่โปรแกรมทั้งหมด (เชลล์ที่ไม่มี X, ด้วย X, ตัวจัดการหน้าต่าง, ซอฟต์แวร์ GUI อื่น ๆ ) สามารถใช้งานได้หรือไม่? หรือการจัดการแบบอักษรแยกต่างหาก? ฉันจะทำอย่างไรเพื่อจัดการฟอนต์ของฉันใน Linux ได้อย่างมีประสิทธิภาพและง่ายดาย?
11 linux  xorg  fonts 

3
เหตุใดจึงต้องใช้ cpio สำหรับ initramfs
ฉันทำ initramfs ของตัวเองต่อไปนี้วิกิพีเดีย Gentoo แทนที่จะเป็นที่คุ้นเคยtarและgzipหน้าจะบอกให้ผมใช้และcpio Wikipediaบอกว่ามันถูกใช้โดย initramfs ของเคอร์เนล 2.6 แต่ไม่ได้อธิบายว่าทำไมgzipcpio นี่เป็นเพียงการประชุมหรือcpioดีกว่าสำหรับผู้เริ่มต้นหรือไม่ ฉันยังสามารถใช้tarและได้gzipหรือไม่?

2
วันที่ - ปีก่อนปี 1901 ถือว่าไม่ถูกต้อง
ฉันมีวันที่ (GNU coreutils) 7.1 ติดตั้งบนระบบของฉัน หากฉันพยายามตรวจสอบวันที่ก่อนวันที่ 14 ธันวาคม 1901 ฉันได้รับข้อผิดพลาด "วันที่ไม่ถูกต้อง" ตัวอย่างเช่น, $ date -d 1901-12-13 date: invalid date `1901-12-13' $ date -d 1901-12-14 Sat Dec 14 00:00:00 EST 1901 ฉันควรทำอย่างไรเพื่อให้dateยูทิลิตี้ในการรักษาหลายปีก่อนปี 1901 ว่าถูกต้อง? ฉันได้รับข้อผิดพลาดที่คล้ายกันสำหรับวันที่หลังจาก 19 ม.ค. 2038

2
ไม่รวมไดเรกทอรีเมื่อซิปไฟล์
ฉันมีสคริปต์ทุบตีที่ทำสิ่งนี้: zip -0 ../backup/backup.zip \ -r ./* \ -x \*CVS\* \ -x *Thumbs.db* \ ไดเรกทอรีที่สำรองนั้นเป็นไฟล์เก็บถาวร SVN (เคยเป็น CVS ย้อนกลับไปในวันนั้น) ฉันไม่สามารถแยกออกเป็น. svn และเนื้อหาได้ อะไรคือวิธีที่สะอาดที่สุดในการยกเว้น. svn (วนซ้ำทั้งต้น)
11 bash  scripting  zip 

3
รายละเอียดข้อมูลไฟล์กระจัดกระจายบน Linux
ฉันมีไฟล์กระจัดกระจายซึ่งมีการจัดสรรบล็อกเพียงบางส่วนเท่านั้น: ~% du -h --apparent-size example 100K example ~% du -h example 52K example ฉันต้องการทราบว่าบล็อกใดของไฟล์ที่ถูกจัดสรรจริง มีการเรียกระบบหรือส่วนต่อประสานเคอร์เนลที่สามารถใช้เพื่อรับรายการการจัดสรรหรือรูของไฟล์หรือไม่? เพียงตรวจสอบสตริงศูนย์ที่ยาวพอ (วิธีที่ GNU cp, rsync ฯลฯ ใช้) ทำงานไม่ถูกต้อง: ~% cp example example1 ~% du -h example1 32K example1 ตรวจพบลำดับอื่นของศูนย์ที่จัดสรรจริง

4
สิทธิ์ sudo ถูกปฏิเสธ แต่ su ได้รับอนุญาต
นี่เป็นเหตุการณ์แรกที่ฉันต้องการให้ su ฉันอ่านบทความเกี่ยวกับการเปลี่ยนค่าใน / sys / อุปกรณ์ / virtual / backlight / acpi_video0 / ความสว่างเพื่อเปลี่ยนความสว่างหน้าจอแล็ปท็อปของฉัน ฉันแรกพบว่าเมื่อฉันจะ$ sudo echo 10 > brightnessฉันจะได้รับอนุญาตถูกปฏิเสธ ฉันเปลี่ยนเป็นรูทโดยใช้ su และ# echo 10 > brightnessเปลี่ยนความสว่างของฉันเกือบจะในทันที สิ่งที่แปลกประหลาดสำหรับฉันเกิดขึ้นเมื่อฉันพยายาม# echo 20 > brightness(ไฟล์ maxbrightness เก็บค่า 15) และฉันได้รับข้อผิดพลาดในการเขียน มีคนอธิบายความแตกต่างระหว่าง sudo กับ su ให้ฉันได้ไหม ทำความเข้าใจกับข้อผิดพลาดในการเขียนจะเป็นโบนัสเพิ่ม ความช่วยเหลือคำแนะนำและ / หรือลิงก์ใด ๆ จะได้รับการชื่นชมมาก
11 permissions  sudo  su 

4
ฉันสามารถให้แอปพลิเคชันทำงานข้ามเซสชัน X ได้หรือไม่
สมมติว่าฉันมีหน้าต่าง Firefox ดาวน์โหลดไฟล์ขนาดใหญ่ที่ต้องใช้เวลานาน ขณะนี้ทำงานได้ครึ่งทางและฉันต้องการเปลี่ยนไปใช้ DE อื่น (เช่นจาก GNOME เป็น KDE) ฉันสามารถทำได้โดยไม่ขัดจังหวะการดาวน์โหลดหรือไม่ แก้ไข: ฉันไม่ได้ใช้ GDM หรือ KDM หรือผู้จัดการเดสก์ท็อปใด ๆ ซึ่งอาจทำให้สถานการณ์ยากขึ้น ...
11 xorg 

4
เหตุใดรูปแบบแป้นพิมพ์สากลของสหรัฐอเมริกาใน Debian จึงแตกต่างกัน
แก้ไข : ฉันรู้ว่า "ปัญหา" ไม่เพียง แต่ใน Ubuntu แต่ใน Debian เองและ Ubuntu เพิ่งสืบทอดมันดังนั้นฉันจึงย้ายข้อมูลจาก Ask Ubuntu ฉันใช้ Linux ในการเปิดและปิดเป็นเวลา 10 ปีและเมื่อเร็ว ๆ นี้ฉันใช้เวลากับ OSX มากขึ้น แต่ฉันยังจำได้ว่าในตอนแรกฉันเลือกเค้าโครงแป้นพิมพ์ระหว่างประเทศของสหรัฐอเมริกาและจะมีผลลัพธ์เหมือนกับเค้าโครงแป้นพิมพ์ Windows (และล่าสุดคือเค้าโครงระหว่างประเทศ OSX US) อย่างไรก็ตามเมื่อไม่กี่ปีที่ผ่านมาเมื่อฉันติดตั้ง Ubuntu ฉันสังเกตว่า cedilla ไม่ได้ถูกพิมพ์อีกต่อไป (çหรือÇ) นี่คือการรวมกันของปุ่มต่อไปนี้: '+ c สิ่งที่ฉันได้รับคือจดหมายć มันเริ่มเกิดขึ้นเมื่อไหร่และทำไมความแตกต่างของพฤติกรรมในระบบปฏิบัติการอื่น ๆ ? สิ่งที่ทำให้ฉันคิดมากยิ่งขึ้นก็คือแม้จะมีรูปแบบแป้นพิมพ์ "US International Alternative" ซึ่งพิมพ์คีย์เดียวกันทั้งหมด! ดังนั้นมันคืออะไรแทน สิ่งนี้ได้รับการรายงานว่าเป็นข้อผิดพลาดกลับไปที่ Canonical (ไม่สามารถหาลิงก์ได้ในตอนนี้) …
11 debian  keyboard 

2
การเพิ่มบรรทัดว่างที่ส่วนท้ายของอินพุต
ฉันมีคำสั่งบางอย่างที่สร้างเอาต์พุตโดยไม่มีบรรทัดใหม่ในตอนท้ายเช่นนี้ Myprompt$ somecmd dksfjdl dsfjdlkfj dsfjdkfj dfjdkfjMyprompt$ ตอนนี้ฉันเอาชนะมันได้โดยวิธีนี้somecmd | sed 's/$/\n/' | tr -s '\n' มีวิธีที่ดีกว่าไหม?

3
เหตุใดจึงต้องใส่ข้อมูลการกำหนดค่าไว้ใน conf / httpd.conf และบางอย่างในไฟล์ในโฟลเดอร์ conf.d
ไฟล์ config apache หลักอยู่ใน/etc/httpd/conf/httpd.confระบบ CentOS ของฉันและมีบรรทัด: Include conf.d/*.conf Inside conf.d เป็นไฟล์ส่วนใหญ่ที่ทำสิ่งนี้: LoadModule auth_kerb_module modules/mod_auth_kerb.so แต่ยังมีเว็บไซต์อื่น ๆ ที่ติดตั้งและมีไฟล์ปรับแต่งของตัวเอง นี่ไม่ใช่ความคิดที่ดีหรือฉันขาดอะไรไปหรือเปล่า

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