Unix & Linux

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

3
ทำเครื่องหมายการเกิดขึ้นของคำหลักที่มีสีแตกต่างกัน
ฉันมีโปรแกรมที่แยกออกเป็นstdoutชอบ: [OK] Something is ok [OK] Something else is also ok [FAIL] This does not look good [FAIL] Neither does this [OK] At least this is fine เพื่อให้ง่ายขึ้นจุดที่ล้มเหลวจากผลลัพธ์ที่ฉันต้องการทำเครื่องหมายการเกิดขึ้นของคำหลักFAILด้วยสีแดงโดยไม่ละทิ้งข้อความอื่น ๆ มันจะดีถ้าฉันยังสามารถเน้นOKคำหลักด้วยสีเขียว :) การทำไพพ์เพื่อegrep --color FAILแสดงเฉพาะบรรทัดที่มีFAILคำหลักอยู่
13 grep  colors 

3
ฉันจะ "ผสาน" ไฟล์ข้อความสองไฟล์ได้อย่างไร
ฉันเพิ่งอัพเกรดจาก Ubuntu 12.04 เป็น 12.10 และ ณ จุดหนึ่งก็พบว่ามีไฟล์ Apache config ขัดแย้งapache2.confกัน apache2.conf.dpkg-distฉันไม่ให้ฉันเป็นตัวเลือกที่ผสานที่จุดนั้นดังนั้นฉันเพิ่งปฏิเสธแฟ้มใหม่และติดตั้งบันทึกแฟ้มใหม่เป็น ฉันสามารถ diff สองไฟล์ด้วยdiff apache2.conf apache2.conf.dpkg-distและรับเฉพาะบรรทัดที่แตกต่างกัน แต่ฉันต้องการผสานทั้งสองแบบด้วยตนเองว่าฉันจะแก้ไขข้อขัดแย้งใน SVN หรือคอมไพล์ได้อย่างไร ฉันจะทำสิ่งนั้นได้อย่างไร
13 linux  ubuntu  diff  etc  merge 

2
ใช้ Atlas จาก scipy
ฉันติดตั้ง Ubuntu 12.04 64 บิต ฉันต้องการทำงานกับ python และ scipy ฉันติดตั้งพวกมันและเมื่อฉันทำการทดสอบ: python -c "import scipy; scipy.test()" ฉันได้รับข้อความ: ImportError: libatlas.so.3gf: ไม่สามารถเปิดไฟล์วัตถุที่ใช้ร่วมกัน: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว แต่ผมมีห้องสมุด libatlas /usr/lib/atlas-baseติดตั้งภายใต้ไดเรกทอรี ฉันรู้ว่าฉันสามารถคัดลอกไฟล์ได้โดยตรงภายใต้/usr/libแต่ฉันสงสัยว่าฉันสามารถตั้งค่า scipy เพื่อใช้งานไลบรารี่ได้usr/lib/atlas-baseอย่างไร?

2
Byobu กับ tmux, วิธีใช้ F-Keys
ฉันเข้าถึงกล่องลินุกซ์โดยเปิดใช้งาน Byobu (ด้วยtmux) และดูเหมือนว่าฉันจะไม่สามารถใช้ F-Keys บางตัวโดยไม่ถูกผูกไว้กับ Byobu ตัวอย่างเช่นใช้ในการจัดเรียงบนF6 htopฉันทำตามคำแนะนำนี้แต่ดูเหมือนจะไม่ได้ผลสำหรับฉัน ฉันกดShift- F2แล้วF6ไม่มีอะไรเกิดขึ้น ฉันกำลังเชื่อมต่อผ่าน PuTTY

1
โปรแกรมที่เป็นเจ้าของรูทพร้อม setuid bit on
Ping เป็นโปรแกรมที่ root เป็นเจ้าของพร้อมชุด id ผู้ใช้ $ ls -l `which ping` -rwsr-xr-x 1 root root 35752 Nov 4 2011 /bin/ping ตามที่ฉันเข้าใจแล้วหากผู้ใช้รันกระบวนการ ping ดังนั้น id ผู้ใช้ที่มีประสิทธิภาพจะเปลี่ยนจาก id ผู้ใช้จริง (เช่น id ผู้ใช้ของบุคคลที่เปิดตัวกระบวนการ) เป็นรูท id ของผู้ใช้ อย่างไรก็ตามเมื่อฉันลองและดูผลลัพธ์ของ ps เพื่อดูว่ากระบวนการ ping ทำงานในฐานะผู้ใช้รูทฉันยังคงได้รับ ID ผู้ใช้จริงที่แสดง ps -e -o user,ruser,euser,cmd,args | grep ping sashan sashan sashan …

1
ใช้ mutt อย่างต่อเนื่อง
ฉันต้องการใช้muttอย่างต่อเนื่องให้ฉันอธิบายสิ่งที่ฉันหมายถึงด้วยตัวอย่าง เวิร์กโฟลว์ทั่วไปของฉันคือ: เปิดออก mutt เขียนข้อความ กดyเพื่อยืนยันการส่ง ... รอ! เขียนข้อความใหม่ กดyเพื่อยืนยันการส่ง ... รอ! ฉันเชื่อมต่อกับ Gmail ผ่าน IMAPS แล้ว ปัญหาคือบ่อยครั้งที่ฉันต้องตอบกลับข้อความจำนวนมากตามลำดับและรูปแบบข้างต้นไม่สามารถยอมรับได้อย่างชัดเจนเพราะโปรแกรมไม่ส่งคืนการควบคุมให้ฉันขณะพยายามส่งข้อความในพื้นหลัง เวลาของฉันมีค่าและฉันไม่สามารถรอให้เครื่องทำงานหลังจากที่ฉันแสดงความตั้งใจของฉัน (ส่ง) ไปแล้วได้ไหม ฉันสามารถกำหนดค่าmuttเพื่อให้การส่งข้อความเป็นพื้นหลังส่งคืนการควบคุมให้ฉันเขียนข้อความเพิ่มเติมได้ทันทีหรือไม่ วิธีแก้ปัญหาปัจจุบันของฉันนี้กำลังทำงานmuttภายในtmuxเซสชันที่มีหลาย windows ทั้งหมดที่ทำงานtmuxและสลับไปยังหน้าต่างอื่นเพื่อเขียนข้อความถัดไปเมื่อมีการส่งก่อนหน้านี้ นี่คือ "แฮ็ค" ที่แย่มากฉันพูด การตั้งค่าของฉัน: smtp_url = "smtps: //robottinosino@smtp.googlemail.com: 465 /" # Gmail configuration set folder = "imaps://imap.googlemail.com:993" set spoolfile = "imaps://imap.googlemail.com:993/[Gmail]/All Mail" set postponed = …
13 mutt 

9
กระจาย stdin ไปยังกระบวนการแบบขนาน
ฉันมีงานที่ประมวลผลรายการไฟล์ใน stdin เวลาเริ่มต้นของโปรแกรมมีความสำคัญและระยะเวลาที่แต่ละไฟล์ใช้กันอย่างกว้างขวาง ฉันต้องการที่จะวางไข่เป็นจำนวนมากในกระบวนการเหล่านี้จากนั้นส่งงานไปยังที่ใดก็ตามที่ไม่ยุ่ง มีเครื่องมือ commandline ที่แตกต่างกันหลายอย่างที่เกือบจะทำในสิ่งที่ฉันต้องการฉัน จำกัด ให้เหลือสองตัวเลือกที่ใช้งานได้ find . -type f | split -n r/24 -u --filter="myjob" find . -type f | parallel --pipe -u -l 1 myjob ปัญหาก็คือsplitการปัดเศษบริสุทธิ์ดังนั้นหนึ่งในกระบวนการที่ได้รับข้างหลังและอยู่ข้างหลังล่าช้าการดำเนินการทั้งหมดเสร็จสมบูรณ์; ในขณะที่parallelต้องการวางไข่หนึ่งกระบวนการต่อ N บรรทัดหรือไบต์ของอินพุตและฉันปิดท้ายการใช้จ่ายเวลามากเกินไปในการเริ่มต้นค่าใช้จ่าย มีบางอย่างเช่นนี้ที่จะใช้กระบวนการและฟีดบรรทัดไปยังกระบวนการใดก็ตามที่มี stdins ที่ไม่ถูกบล็อก

5
จัดเรียงภาพตามอัตราส่วน
ฉันพยายามเลือกภาพศิลปะสองสามภาพเพื่อให้พอดีกับเฟรมใหม่บางเฟรม ฉันต้องการที่จะสามารถจัดเรียงภาพเหล่านี้ตามอัตราส่วนใกล้เคียงกับอัตราส่วนเฉพาะแล้วดูพวกเขาในการลดลำดับความใกล้ชิดผ่านสิ่งที่ชอบ feh มีการแสดงออก Unix บรรทัดเดียวที่รุ่งโรจน์หรือไม่? มิฉะนั้นสองสามบรรทัดของ Python ควรจะเคลียร์สิ่งนี้
13 images 

4
วิธีคืนค่าความเป็นเจ้าของกลุ่ม / ผู้ใช้เริ่มต้นของไฟล์ทั้งหมดภายใต้ / var?
ฉันเปลี่ยน/varเจ้าของ / กลุ่มเป็นชื่อผู้ใช้ของฉันโดยไม่ตั้งใจแล้วเปลี่ยนกลับเป็นรูท แต่ไม่ใช่/varเจ้าของโฟลเดอร์ทั้งหมดที่เป็นรูทดังนั้นจะต้องเปลี่ยนเจ้าของ / กลุ่มไฟล์ / โฟลเดอร์กลับไปเป็นสถานะเริ่มต้นหรือไม่ หรืออย่างน้อยไฟล์ / โฟลเดอร์ที่สร้างโดยแพ็คเกจ

3
แบบฝึกหัด grep ออนไลน์ [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Unix & Linux Stack Exchange ปิดให้บริการใน9 เดือนที่ผ่านมา มี grep tutorials ออนไลน์ที่มีเครื่องมือออนไลน์สำหรับการฝึกหัดหรือไม่? ตัวอย่างเช่นมีตัวอย่างข้อความที่กำหนดไว้ล่วงหน้าและได้รับการบอกว่ารูปแบบการค้นหาและอื่น ๆ ? มันจะเป็นเครื่องมือที่มีประโยชน์มากสำหรับการเรียนรู้ภาคปฏิบัติของ grep ในสภาพแวดล้อมที่คาดการณ์ได้

3
เกิดอะไรขึ้นกับงาน cron ทั้งสองนี้
ฉันมีงาน cron ดังต่อไปนี้ที่กำหนดไว้ 55 8 * * 3 /usr/bin/php /home/mark/dev/processes/customClient/events.php > /home/mark/dev/processes/customClient/events-`date +%Y-%m-%d --date='last Wednesday'`-`date +%Y-%m-%d`.csv 0 9 * * 3 /usr/bin/echo 'The csv for last week, trying my hand at automatiging this' | /usr/bin/mutt <emailaddress> -s 'Events from `date +%Y-%m-%d --date='last Wednesday'`-`date +%Y-%m-%d`' -a '/home/mark/dev/processes/customClient/events-`date +%Y-%m-%d --date='last Wednesday'`-`date +%Y-%m-%d`.csv' …

3
ฉันจะใช้ tee เพื่อเปลี่ยนเส้นทางไปยัง grep ได้อย่างไร
ฉันไม่ค่อยมีประสบการณ์ในการใช้เสื้อยืดดังนั้นฉันหวังว่านี่จะไม่ธรรมดา หลังจากที่ได้ดูหนึ่งในคำตอบที่จะคำถามนี้ฉันมาข้าม beheviour teeแปลก เพื่อให้ฉันออกบรรทัดแรกและบรรทัดที่พบฉันสามารถใช้สิ่งนี้: ps aux | tee >(head -n1) | grep syslog USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND syslog 806 0.0 0.0 34600 824 ? Sl Sep07 0:00 rsyslogd -c4 อย่างไรก็ตามครั้งแรกที่ฉันรันสิ่งนี้ (เป็น zsh) ผลลัพธ์อยู่ในลำดับที่ไม่ถูกต้องส่วนหัวคอลัมน์จะต่ำกว่าผลลัพธ์ grep (นี่ไม่ได้เกิดขึ้นอีกแล้ว) ดังนั้นฉันจึงพยายามสลับคำสั่งรอบ ๆ : ps aux | tee …

1
กลุ่มภายในสิทธิ์ของไฟล์กลุ่ม
ฉันพยายามค้นหาสิ่งนี้ที่นี่ แต่ก็ไม่สามารถขอโทษถ้ามันซ้ำกัน บอกว่าฉันมี 2 กลุ่มและผู้ใช้: group1, group2, user1 ที่มีโครงสร้างต่อไปนี้: group1 เป็นสมาชิกของกลุ่ม 2 ผู้ใช้ 1 เป็นสมาชิกของ group1 ตอนนี้บอกว่าฉันมีไฟล์ต่อไปนี้ที่มีสิทธิ์ที่เกี่ยวข้อง file1 root:group1 660 file2 root:group2 660 ตอนนี้เมื่อฉันลงชื่อเข้าใช้ user1 ฉันสามารถแก้ไข file1 แต่ไม่สามารถแก้ไข file2 ได้ ย่อการเพิ่ม user1 ไปยัง group2 มีวิธีการทำเช่นนี้หรือไม่? หรือไม่มีทาง? ฉันใช้ Ubuntu btw


2
VIM การเรียกใช้งานคำสั่งคีย์ในฟังก์ชัน
ฉันมีฟังก์ชั่นและฉันต้องการที่จะดำเนินการคำสั่งที่สำคัญ แต่ฉันได้รับข้อผิดพลาดตัวอักษรต่อท้าย: function! MyFunction() if condition <C-W><C-W> else :some_other_command endif endfunction ไม่ชอบ <CW> <CW> ฉันจะใช้อะไรแทนได้บ้าง
13 vim 

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