Unix & Linux

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

4
ฉันจะลบอักขระบรรทัดใหม่ที่ท้ายไฟล์ได้อย่างไร
ให้ฉันชัดเจนเกี่ยวกับอักขระขึ้นบรรทัดใหม่: $ echo Hello > file1 ; cat file1 Hello $ echo -n Hello > file2 ; cat file2 Hello$ ที่นี่คุณจะเห็นว่าfile1มีอักขระขึ้นบรรทัดใหม่ในตอนท้ายขณะที่file2ยังไม่มี ตอนนี้สมมติว่าฉันเป็นหนึ่งfile: $ cat file Hello Welcome to Unix $ และฉันต้องการที่จะเพิ่มand Linuxในตอนท้ายของไฟล์จากนั้นecho " and Linux" >> fileจะถูกเพิ่มไปยังบรรทัดใหม่ แต่ฉันต้องการบรรทัดสุดท้ายเป็นUnix and Linux ดังนั้นเพื่อหลีกเลี่ยงฉันต้องการลบอักขระบรรทัดใหม่ที่ท้ายไฟล์ ดังนั้นฉันจะลบอักขระบรรทัดใหม่ได้อย่างไรในตอนท้ายของไฟล์

2
ทำไม `sort <(ls -l)` ทำงาน แต่ `sort <(ls -l)` ล้มเหลว?
วันนี้ผมกำลังเรียนรู้อะไรบางอย่างเกี่ยวกับ FIFO บทความนี้: รู้เบื้องต้นเกี่ยวกับไปป์cat &lt;(ls -l)ซึ่งกล่าวถึง ฉันทำการทดลองโดยใช้sort &lt; (ls -l)ซึ่งข้อผิดพลาดปรากฏขึ้น: -bash: syntax error near unexpected token `('` จากนั้นฉันก็พบว่าฉันมีช่องว่างเพิ่มเติมในคำสั่งผิด แต่ทำไมคำสั่งพิเศษนี้จะนำไปสู่ความล้มเหลวนี้ ทำไมสัญลักษณ์การเปลี่ยนเส้นทางจะต้องใกล้เคียงกับ(?


1
สิ่งที่รับประกันสำหรับการเขียนพร้อมกันลงในท่อที่มีชื่อ?
ตัวอย่างเช่นฉันสร้างไปป์ที่มีชื่อดังต่อไปนี้: mknod myPipe p และฉันอ่านจากบางกระบวนการ (ตัวอย่างเช่นเซิร์ฟเวอร์บางตัว) สำหรับวัตถุประสงค์ตัวอย่างฉันใช้หาง: tail -f myPipe หากกระบวนการไคลเอนต์หลายแห่งเขียนข้อความลงไป (ตัวอย่างเช่นecho "msg" &gt;&gt; myPipeอาจมีโอกาสที่ข้อความจะถูกอินเตอร์ลีฟเช่นนี้: &lt;beginning of message1&gt;&lt;message2&gt;&lt;ending of message1&gt; หรือกระบวนการเขียนชื่อไพพ์คืออะตอมหรือไม่
32 linux  pipe 

2
วิธีตอบสนองที่รวดเร็วในการรีเฟรชกล่องจดหมาย
การใช้muttกับ Gmail ฉัน "ตรวจสอบการอัปเดตอีเมล" บางครั้งผ่านการ$เชื่อมโยง (ซิงค์เมลบ็อกซ์) บางครั้งก็ใช้c(เปลี่ยนโฟลเดอร์) และเพียงจัดหา=(ค่าเริ่มต้นไปที่ MAILBOX) เป็นเส้นทางโฟลเดอร์ IMAP เพื่อเปลี่ยน มีวิธีที่ดีกว่า (โดยเฉพาะ: เร็วกว่า) ในการทำเช่นเดียวกันหรือไม่? การแก้ปัญหาจะเป็นสิ่งที่ตรงกว่า "ทำท่าจะสลับโฟลเดอร์" อย่างที่ฉันทำ นอกจากนี้ยังมีบางสิ่งที่ไม่ "พลาด" การอัปเดตบางอย่างตามที่$ดูเหมือนว่าจะทำในบางครั้ง (อาจ$ไม่ได้หมายถึงการตรวจสอบอีเมลเลย แต่เพียงเพื่อลบข้อความที่ทำเครื่องหมายว่าถูกลบ ฯลฯ )
32 mutt 

2
ไฟล์จะไปที่ไหนถ้าคุณติดตั้งไดรฟ์ไปยังโฟลเดอร์ที่มีไฟล์อยู่แล้ว?
ฉันเพิ่งบังเอิญติดตั้งไดรฟ์ใหม่ไปยังโฟลเดอร์ที่มีไฟล์อยู่แล้ว ฉันไม่สนใจพวกเขาและมีที่อื่น แต่โฟลเดอร์นั้นว่างเปล่าในขณะนี้ ฉันอยากรู้ว่าเกิดอะไรขึ้นกับไฟล์ พวกเขาเพียงแค่ลบโดย Linux?

4
ลบ n ไบต์แรกของไฟล์
ฉันมีปัญหามากและวิธีแก้ไขทั้งหมดที่ฉันจินตนาการได้นั้นซับซ้อน จากประสบการณ์ UNIX / Linux ของฉันต้องมีวิธีที่ง่าย ฉันต้องการที่จะลบ 31 /foo/ไบต์แรกของแต่ละแฟ้มใน แต่ละไฟล์มีความยาวเพียงพอ ฉันแน่ใจว่าใครบางคนจะส่งมอบวิธีแก้ปัญหาที่ง่ายอย่างเหลือเชื่อให้กับฉันฉันไม่สามารถจินตนาการได้ อาจจะตกใจ

5
วิธีเปลี่ยนเส้นทาง stdout ไปยังไฟล์และ stdout + stderr ไปยังไฟล์อื่นได้อย่างไร
ฉันจะประสบความสำเร็จได้อย่างไร cmd &gt;&gt; file1 2&gt;&amp;1 1&gt;&gt;file2 นั่นคือ stdout และ stderr ควรเปลี่ยนเส้นทางไปที่หนึ่งไฟล์ (file1) และ stdout เท่านั้น (file2) ควรเปลี่ยนเส้นทางไปที่อื่น (ทั้งในโหมดต่อท้าย)?

6
ไคลเอนต์ X จำเป็นต้องใช้โปรแกรมจัดการหน้าต่างเพื่อทำงานได้หรือไม่?
ไคลเอนต์ X จำเป็นต้องใช้โปรแกรมจัดการหน้าต่างเพื่อทำงานได้หรือไม่? X client สามารถทำงานกับ X server ได้หรือไม่? หากไคลเอนต์ X ไม่มีหน้าต่างจะทำงานได้หรือไม่ว่าต้องใช้ตัวจัดการหน้าต่างหรือไม่ หากไคลเอนต์ X สามารถทำงานโดยไม่มีตัวจัดการหน้าต่างได้ไคลเอ็นต์ X จำเป็นต้องไม่มีหน้าต่างหรือไม่? ขอบคุณ

2
ทำไม apt-get norm แทนที่จะเป็น apt
ทำไมคนใช้apt-getแทนapt? apt-getในเกือบทุกกวดวิชาที่ผมเห็นข้อเสนอแนะคือการใช้งาน aptมีความสวยงามมากขึ้น (โดยค่าเริ่มต้น) สั้นกว่าและใช้งานง่ายกว่าปกติ ( ตัวอย่างเช่นapt-cache searchvs apt search) ฉันไม่รู้ว่าฉันขาดอะไรไปหรือเปล่าเพราะaptดูดีกว่าในทุกด้าน อะไรคือเหตุผลของการใช้ในชีวิตประจำวันapt-getมากกว่าapt?

7
แนวคิดของการสร้างไฟล์ที่มีศูนย์ไบต์ใน Linux คืออะไร?
ถ้าฉันทำต่อไปนี้: touch /tmp/test จากนั้นดำเนินการ ls -la /tmp/ ฉันสามารถดูtestไฟล์ที่มี0 ไบต์ในไดเรกทอรี แต่ระบบปฏิบัติการจัดการกับแนวคิดของ0 Bytesอย่างไร ถ้าฉันใส่มันในแง่คนธรรมดา: 0 ไบต์ไม่มีหน่วยความจำเลยไม่มีสิ่งใดถูกสร้างขึ้น การสร้างไฟล์ต้องหรือควรอย่างน้อยต้องใช้หน่วยความจำบางอย่างใช่มั้ย?

5
เป็นกลุ่ม: ส่วนขยาย swapfile ที่เป็นไปได้ทั้งหมดคืออะไร?
เมื่อคุณแก้ไขไฟล์เป็นกลุ่มจะสร้าง swapfile ที่มีชื่อเดียวกับไฟล์ปัจจุบันของคุณ แต่ใช้.swpนามสกุล หาก.swpมีการใช้แล้วมันจะสร้าง.swoหนึ่ง หากถูกถ่ายไปแล้วคุณจะได้รับ.swaฯลฯ ฯลฯ ฉันไม่พบเอกสารใด ๆ เกี่ยวกับลำดับการตั้งชื่อทางเลือกที่แน่นอนสำหรับไฟล์เหล่านี้ทุกคนสามารถชี้แจงด้วยการเลือกนามสกุลที่เลือกได้หรือไม่
32 vim  filenames 

1
“ / usr / bin / ping” แสดงเป็นสีเหลือง - แดงในโทนสีเริ่มต้นของ Fedora bash หมายความว่าอย่างไร
เมื่อรายชื่อไดเรกทอรี/usr/binหนึ่งเห็นว่า ping จะแสดงเป็นสีเหลืองบนสีแดง: ไฟล์ไม่มีคุณสมบัติพิเศษ: $ file /usr/bin/ping /usr/bin/ping: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=2508ea2a85b70c68967b3e6345541430f5317d5f, stripped $ stat /usr/bin/ping File: '/usr/bin/ping' Size: 62096 Blocks: 136 IO Block: 4096 regular file Device: 802h/2050d Inode: 4457229 Links: 1 Access: (0755/-rwxr-xr-x) Uid: ( …
32 ls  colors  ping 

4
คุณสามารถขาย Linux distros รุ่นที่ถูกกฎหมายได้หรือไม่? [ปิด]
สมมติว่ามีคนดาวน์โหลด distro Linux เช่น Ubuntu สมมติว่าคุณปรับเปลี่ยนชิ้นส่วนเพิ่มเติมอีกหนึ่งรายการพูดในเครื่องมือจัดการหน้าต่าง จะเป็นกฎหมายหรือไม่ที่พวกเขาจะขายสำเนา Ubuntu รุ่นที่แก้ไขเล็กน้อยนี้ (เรียกว่า Mubuntu = Modified Ubuntu) จะเกิดอะไรขึ้นถ้าพวกเขาสร้างแหล่งข้อมูลปิดส่วนผู้จัดการหน้าต่างใหม่ จะยังคงถูกกฎหมายหรือไม่ที่จะขาย?
32 licenses 

5
หนึ่งไฟล์ต้องการเป็นของผู้ใช้สองคน อย่างไร? การเชื่อมโยงฮาร์ดล้มเหลว
สอง setuid โปรแกรม/usr/bin/barและแบ่งปันไฟล์การกำหนดค่าเดียว/usr/bin/baz fooโหมดของไฟล์การกำหนดค่าคือ0640มันเก็บข้อมูลที่ละเอียดอ่อน โปรแกรมหนึ่งวิ่งbar:bar(นั่นคือเป็นผู้ใช้บาร์,กลุ่มบาร์ ); อื่น ๆ baz:bazที่เป็น ผู้ใช้ที่เปลี่ยนแปลงไม่ได้เป็นตัวเลือกและแม้แต่การเปลี่ยนกลุ่มจะไม่เป็นที่ต้องการ ฉันต้องการที่จะเชื่อมโยงอย่างหนักแฟ้มการกำหนดค่าเดียวและ/etc/bar/foo /etc/baz/fooแต่นี้ล้มเหลวเนื่องจากต้องยื่นเท่าที่ผมรู้ว่าเป็นอย่างใดอย่างหนึ่งหรือroot:barroot:baz วิธีการแก้ปัญหาที่อาจเกิดขึ้น: สร้างกลุ่มใหม่barbazที่มีสมาชิกเป็นและbar bazให้เป็นของfooroot:barbaz นั่นดูเหมือนจะเป็นทางออกที่หนักหน่วงสำหรับฉัน ไม่มีผู้ชนะวิธีที่ง่ายกว่าในการแชร์ไฟล์การกำหนดค่าfooระหว่างสองโปรแกรมหรือไม่ สำหรับตอนนี้ฉันกำลังรักษาสำเนาของไฟล์ที่เหมือนกันสองชุด ใช้งานได้ แต่เห็นได้ชัดว่าผิด อะไรจะถูกต้อง? สำหรับข้อมูล: ฉันมีประสบการณ์น้อยกับกลุ่ม Unix และไม่มีใครกับ setgid (2)

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