Unix & Linux

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

1
ฉันจะเปลี่ยนทิศทางผลลัพธ์การเสร็จสิ้นคำสั่งได้อย่างไร
ในบรรทัดคำสั่งฉันสามารถเปลี่ยนเส้นทางหรือไพพ์เอาท์พุทของคำสั่งไปยังไฟล์หรือคำสั่งอื่นโดยใช้ตัวดำเนินการ>หรือ|หลังคำสั่ง ฉันเจอสถานการณ์มาตรฐานน้อยกว่าที่ฉันต้องการเปลี่ยนเส้นทางผลลัพธ์ไปยังไฟล์ แต่ดูเหมือนว่าฉันไม่มีโอกาสได้เปลี่ยนเส้นทาง: เมื่ออยู่ที่อาคารผู้โดยสารแห่งใหม่ [chiliNUT ~]$ ถ้าฉันกดTabโดยไม่พิมพ์อะไรก่อนฉันจะถูกถาม display all 1725 possibilities? (y or n) และถ้าฉันพิมพ์yฉันก็จะได้คำสั่งต่าง ๆ จำนวนมาก ฉันจะเปลี่ยนเส้นทางหรือไพพ์เอาต์พุตนี้ไปยังไฟล์ได้อย่างไร? ฉันดูเหมือนจะไม่ได้รับโอกาสในการพิมพ์> myfile.txtทุกที่ ใช้CentOS ปล่อย 6.4 (สุดท้าย)

2
เหตุใด Linux จึงมีอายุการใช้งานแบตเตอรี่ต่ำเมื่อเทียบกับ Windows
มีบางสิ่งที่เป็นธรรมชาติของระบบปฏิบัติการ Linux ที่ทำให้พวกเขาจัดการพลังงานแบตเตอรี่ไม่ดีตามค่าเริ่มต้นหรือไม่? ฉันคิดว่า distro แบบเบา ๆ อย่าง Lubuntu จะมีข้อได้เปรียบด้านอายุการใช้งานแบตเตอรี่ที่ชัดเจนกว่า Windows แต่นี่ไม่ได้เป็นอย่างนั้น เป็นปัญหาของผู้จำหน่ายฮาร์ดแวร์หรือไม่ - แล็ปท็อปเพิ่งออกแบบมาเพื่อใช้พลังงานอย่างมีประสิทธิภาพมากขึ้นกับระบบปฏิบัติการ Windows ตัวอย่างเช่นจากประสบการณ์ของฉันในแล็ปท็อปเครื่องเดียวกันการแจกจ่าย linux ที่ให้มาดูเหมือนว่าจะมีอายุการใช้งานแบตเตอรี่ที่ต่ำเมื่อเทียบกับ Windows แล็ปท็อปเครื่องเก่าของฉัน (Thinkpad X61) กินเวลานานเกือบครึ่งเมื่อบูตเข้าสู่ Lubuntu มากกว่าที่ใช้ Windows XP ในรุ่นที่ใหม่กว่าฉันได้รับประสิทธิภาพที่แย่คล้ายกันโดยใช้ Fedora 20 กับ Windows 8.1

2
บันทึกแป้นพิมพ์ลัดที่กำหนดเองใน Gnome
ในระบบ Debian ของฉันฉันได้ปรับแต่งแป้นพิมพ์ลัด Gnome (Shell) ผ่านการตั้งค่าระบบ> แป้นพิมพ์> ทางลัด ฉันจะค้นหาไฟล์ด้วยการตั้งค่าเหล่านี้ได้ที่ไหนเพื่อให้ฉันสามารถคัดลอกไฟล์ลงในแฟลชไดรฟ์เพื่อสำรองข้อมูลและใช้เพื่อแทนที่แป้นพิมพ์ลัดบนระบบ Gnome อื่น ๆ

3
ทดสอบความสมบูรณ์ของไฟล์ tar ใน bash
ฉันมีสคริปต์ทุบตีที่สร้างไฟล์ '.tar' เมื่อสร้างไฟล์แล้วฉันต้องการทดสอบความสมบูรณ์ของไฟล์และส่งอีเมลไปยังผู้ใช้รูทหากความถูกต้องไม่ดี ฉันรู้ว่าฉันจะต้องใช้คำสั่งtar -tf /root/archive.tarเพื่อตรวจสอบความสมบูรณ์ของไฟล์ แต่ฉันจะใช้สิ่งนี้ใน bash if คำสั่งและตรวจสอบข้อผิดพลาดได้อย่างไร
25 bash  tar 

4
วิธีแยกล็อกระหว่างการประทับเวลาสองครั้ง
ฉันต้องการแยกบันทึกทั้งหมดระหว่างการประทับเวลาสองครั้ง บางบรรทัดอาจไม่มีการประทับเวลา แต่ฉันต้องการเส้นเหล่านั้นด้วย ในระยะสั้นฉันต้องการทุกบรรทัดที่อยู่ภายใต้การประทับเวลาสองครั้ง โครงสร้างบันทึกของฉันดูเหมือนว่า: [2014-04-07 23:59:58] CheckForCallAction [ERROR] Exception caught in +CheckForCallAction :: null --Checking user-- Post [2014-04-08 00:00:03] MobileAppRequestFilter [DEBUG] Action requested checkforcall สมมติว่าผมต้องการที่จะดึงทุกอย่างระหว่างและ2014-04-07 23:002014-04-08 02:00 โปรดทราบว่าการประทับเวลาเริ่มต้นหรือการประทับเวลาสิ้นสุดอาจไม่มีอยู่ในบันทึก แต่ฉันต้องการทุกบรรทัดระหว่างการประทับเวลาสองครั้งนี้

2
วิธีที่เร็วที่สุดในการเชื่อมไฟล์เข้าด้วยกัน
ฉันมีไฟล์ 10k + รวมกว่า 20GB ที่ฉันต้องต่อกันเป็นไฟล์เดียว มีวิธีที่เร็วกว่า cat input_file* >> out ? วิธีที่ต้องการจะเป็นคำสั่ง bash, Python เป็นที่ยอมรับเช่นกันหากไม่ช้ากว่านี้มาก
25 bash  shell-script  files  cat 

6
มี front-end gui ที่ใช้งานได้บน git บน Linux หรือไม่?
ฉันเป็นผู้ใช้ windows เก่าและเพิ่งเริ่มใช้งาน Ubuntu บน Windows, เรามีสองโปรแกรมที่ดี: และTortoiseSVN TortoiseGitทั้งคู่เป็นโปรแกรมที่ดีที่พวกเขาอนุญาตให้เราทำทุกอย่างเช่นคอมมิท, โรลแบ็ค, รวม, ดูประวัติ, ค้นหา repos และอื่น ๆ โดยไม่ต้องรู้คำสั่ง SINGLE cli ตอนนี้บน linux ฉันพบว่ามันยากที่จะจดจำคำสั่ง git สำหรับทุกสิ่ง git pushและgit remote addเป็นเรื่องปกติ แต่การรวมกันนั้นน่าเบื่อโดยเฉพาะการแก้ไขข้อขัดแย้ง ใน TortoiseGit มันเป็นเรื่องของการคลิกขวาเพียงไม่กี่! ฉันได้พบอึเช่น git-gui ฯลฯ แต่คุณสมบัติไม่ได้เทียบได้กับ TortoiseGit เหตุใดจึงไม่มีพอร์ต TortoiseGit ที่ครบถ้วนในระบบ Linux
25 software-rec  git  gui 

5
วิธีอ่านอินพุตมากกว่า 4k โดยไม่มีบรรทัดใหม่บนเทอร์มินัล
ดังนั้นฉันจึงมีข้อมูลจำนวนมากโดยไม่ต้องมีบรรทัดใหม่บนคลิปบอร์ด (เป็นไฟล์ SVG ขนาดใหญ่ในหนึ่งบรรทัด) ฉันไป $ cat >file.svg จากนั้นพยายามวาง (ในเทอร์มินัล Gnome) แต่ยอมรับเฉพาะอักขระขนาด 4kB แรกเท่านั้น ฉันถือว่านี่เป็นคุณสมบัติ / ข้อ จำกัด readline มีวิธีอ่านจาก STDIN ที่จะหลีกเลี่ยงปัญหานี้หรือไม่? แก้ไข กรณีทดสอบ: สร้างไฟล์ตัวอย่าง อันนี้จะมีสัญลักษณ์ ~ 4k "=" ตามด้วย "foo bar" { printf '=%.0s' {1..4095} ; echo "foo bar" ; } > test.in คัดลอกลงในคลิปบอร์ดของคุณ xclip test.in (หากคุณต้องการคลิกกลางที่จะแทรก) หรือ xclip …

3
mv ไฟล์ไปยัง / dev / null แบ่ง dev / null
ถ้าฉันทำ: touch file; mv file /dev/nullเป็นราก/dev/nullหายไป ls -lad /dev/nullส่งผลให้ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว แบ่งการใช้งานนี้ซึ่งขึ้นอยู่กับ/dev/nullเช่น SSH mknod /dev/null c 1 3; chmod 666 /dev/nullและสามารถแก้ไขได้โดยการทำ ทำไมการย้ายไฟล์ปกติไปยังไฟล์พิเศษนี้ส่งผลให้หายไป/dev/null? เพื่อชี้แจงนี่คือเพื่อวัตถุประสงค์ในการทดสอบและฉันเข้าใจว่าmvคำสั่งทำงานอย่างไร สิ่งที่ฉันอยากรู้คือทำไมls -la /dev/nullก่อนที่จะแทนที่ด้วยไฟล์ปกติจะแสดงผลลัพธ์ที่คาดหวัง แต่หลังจากนั้นมันก็แสดงว่า/dev/nullไม่มีอยู่แม้ว่าไฟล์นั้นจะถูกสร้างขึ้นผ่านmvคำสั่งดั้งเดิมและคำสั่ง file แสดงข้อความ ASCII ฉันคิดว่านี่ต้องเป็นการรวมกันของlsพฤติกรรมคำสั่งร่วมกับdevfsเมื่อไฟล์ที่ไม่ใช่พิเศษมาแทนที่อักขระ / ไฟล์พิเศษ นี่คือบน Mac OS X พฤติกรรมอาจแตกต่างกันไปตามระบบปฏิบัติการอื่น
25 osx  devices  null 

4
ข้อผิดพลาดในการตรวจสอบธุรกรรมในการติดตั้งเป็นกลุ่ม?
ฉันเพิ่งอัปเดต fedora เป็น 20 และต้องการติดตั้ง vim.but แต่sudo yum install vimกลับแสดงข้อผิดพลาดนี้: Transaction check error: file /usr/share/man/man1/vim.1.gz from install of vim-common-2:7.4.179-1.fc20.x86_64 conflicts with file from package vim-minimal-2:7.4.027-2.fc20.x86_64 Error Summary ------------- จะแก้ไขปัญหานี้ได้อย่างไร?
25 fedora  vim  yum 

1
ฉันล้มเหลวในการดึงข้อมูลคีย์ GPG ผ่าน HKPS ด้วยข้อผิดพลาด“ gpgkeys: ข้อผิดพลาดการดึงข้อมูล HTTP 1: โปรโตคอลที่ไม่สนับสนุน”
ฉันพยายามดึงกุญแจ GPG ผ่าน keys.gnupg.net และ hkps.pool.sks-keyservers.net และทั้งสองล้มเหลวด้วย: gpg: requesting key 1F41B907 from hkps server hkps.pool.sks-keyservers.net gpgkeys: HTTP fetch error 1: unsupported protocol ฉันใช้การทดสอบเดเบียน gpg --versionอัตราผลตอบแทนgpg (GnuPG) 1.4.16
25 gpg 

3
ทำไมฉันไม่สามารถใช้ renice เพื่อเพิ่มมูลค่าที่ดีของกระบวนการได้?
จากman renice: ผู้ใช้รายอื่นนอกเหนือจากผู้ใช้ขั้นสูงอาจเปลี่ยนลำดับความสำคัญของกระบวนการที่พวกเขาเป็นเจ้าของและสามารถเพิ่มค่าที่ดี 'ของพวกเขา (เพื่อเหตุผลด้านความปลอดภัย)ภายในช่วง 0 ถึง PRIO_MAX (20) [... ] ดังนั้นฉันสามารถทำreniceกระบวนการของตัวเองให้สูงขึ้น (ให้ลำดับความสำคัญต่ำกว่า) แต่ไม่เคยลง: $ renice 10 22316 22316 (process ID) old priority 0, new priority 10 $ renice 9 22316 renice: failed to set priority for 22316 (process ID): Permission denied ทำไมนี้ ฉันสามารถเข้าใจได้ว่าทำไมผู้ใช้ปกติไม่สามารถตั้งค่าที่ดีได้ต่ำกว่า 0 แต่เพราะเหตุใดฉันสามารถลดลำดับความสำคัญเป็น 10 ฉันไม่สามารถเพิ่มความสำคัญเป็น 9 อีกครั้งได้ …
25 nice  priority 

1
ปุ่มลัดที่เป็นอิสระต่อการจัดวางคีย์บอร์ด
มีวิธีการกำหนดความสัมพันธ์ของฟิสิคัลคีย์เฉพาะของคีย์บอร์ดกับการกระทำบางอย่างโดยไม่ขึ้นอยู่กับตัวอักษรที่คีย์นี้เชื่อมโยงกับเลย์เอาต์ใด ๆ หรือไม่? ตัวอย่าง : ในการเชื่อมโยงคีย์ลัด Gnome ที่เป็นค่าเริ่มต้นส่วนใหญ่การกดAlt+ Ctrl+ จะTเปิดเทอร์มินัล แต่เฉพาะในรูปแบบแป้นพิมพ์ละติน ทำเหมือนทางกายภาพการดำเนินการขณะที่อยู่ในรูปแบบภาษากรีกไม่ทำงานเนื่องจากตัวอักษรที่เกี่ยวข้องเป็นแล้ว"กรีกT"ไม่"ลาตินT " ดังนั้นจึงมีการสลับไปยังรูปแบบภาษาละตินก่อนแล้วกดปุ่มทางลัดซึ่งอาจทำให้หงุดหงิดเนื่องจากไม่แน่ใจว่ามีการกดปุ่มไม่ถูกต้องตั้งแต่แรกดังนั้นอาจลองหลายครั้งจนกว่าจะรู้ว่าปัญหา อยู่ในเค้าโครง โซลูชันอาจกำหนดความสัมพันธ์เดียวกันสำหรับคีย์เดียวกันในทุกเลย์เอาต์ที่ใช้ - แต่จากนั้นจะต้องทำสิ่งนี้กับทางลัดทั้งหมดดังนั้นโซลูชันนี้จึงไม่ได้ขยายขนาด

8
ปุ่มลูกศรหยุดทำงานเป็นกลุ่มโดยธรรมชาติ
ฉันเพิ่งอัพเกรดจาก OS X 10.6 (ฉันคิดว่า) เป็น 10.9 ตั้งแต่นั้นมาดูเหมือนว่าในขณะที่แก้ไขvimปุ่มลูกศรจะ "หยุด" ตามธรรมชาติหยุดทำงาน ถึงจุดหนึ่งในความยุ่งยากฉัน "บด" หนึ่งในปุ่มลูกศรและในที่สุดก็แสดงข้อผิดพลาด "E388 ไม่สามารถหาคำนิยาม" ทุกครั้งที่ฉันพบมันลูกศรการทำงานสักครู่ก็เริ่มพุ่งเข้าใส่ฉัน! เลิกและเปิดแก้ปัญหาชั่วคราว แต่ฉันต้องการป้องกันมัน! ใครรู้ว่าสิ่งนี้อาจเป็นอย่างไร และจะแก้ไขได้อย่างไร? ดูเหมือนว่าค่าเริ่มต้นของฉันvimrcจะถูกแก้ไขในระหว่างการอัพเดต หากหน่วยความจำของฉันถูกต้องมันเป็นไฟล์ที่ค่อนข้างใหญ่มาก่อน ตอนนี้มันมี: " Configuration file for vim set modelines=0 " CVE-2007-2438 " Normally we use vim-extensions. If you want true vi-compatibility " remove change the following statements set nocompatible …
25 vim 

3
l, ls & la - อะไรคือความแตกต่างและมีคำสั่งเหล่านี้อีกหรือไม่
ดังนั้นด้วยการพิมพ์หลาย ๆ คำสั่งฉันพบว่ามันมีไม่เพียงlsแต่lและlaด้วย ดูเหมือนจะไม่มีmanรายการใด ๆบน Ubuntu 12.14 พวกเขาดูเหมือนจะทำสิ่งที่คล้ายกันและมีความแตกต่างเล็กน้อย $ ls app config CONTRIBUTING.md doc Gemfile Guardfile LICENSE MAINTENANCE.md Procfile Rakefile script tmp VERSION CHANGELOG config.ru db features Gemfile.lock lib log PROCESS.md public README.md spec vendor $ la app CHANGELOG config.ru db features Gemfile .git Guardfile LICENSE MAINTENANCE.md Procfile Rakefile .rspec …
25 ubuntu  alias  bashrc 

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