คำถามติดแท็ก ls

คำสั่ง ls แสดงรายการเนื้อหาของไดเรกทอรี

1
(เพราะเหตุใด) การใช้ ls -A ในการแสดงรายการไฟล์ที่ซ่อนไม่ดีหรือไม่
ฉันต้องการแสดงรายการทุกไฟล์รวมถึงไฟล์ที่ซ่อนอยู่ในไดเรกทอรีปัจจุบัน ฉันไม่ต้องการรวมไดเรกทอรี (.. ) และไดเรกทอรี (.) ปัจจุบัน ฉันพบสิ่งนี้: วิธีการ glob ทุกไฟล์ที่ซ่อนยกเว้นไดเรกทอรีปัจจุบันและผู้ปกครอง ในตอนท้ายบางคนกล่าวว่าls -Aเป็นวิธีที่จะไป อย่างไรก็ตามดูเหมือนว่าจะทำงาน มีอะไรผิดปกติกับls -A?
9 ls  filenames 

1
ls -l - กลุ่มไดเรกทอรีแรก (ดำเนินการกับ symlink ด้วย)
lsตัวเลือก--group-directories-firstทำให้ไดเรกทอรีที่จะแสดงรายการอยู่ด้านบนซึ่งทำให้การส่งออกของlsดีและสะอาด: ls -l --group-directories-first อย่างไรก็ตามมันไม่ได้ดำเนินการกับsymlinksซึ่งเป็นsymlinksไดเรกทอรีจริงๆ มีความเป็นไปได้ที่จะใช้เป็น ls -l -L --group-directories-first ซึ่งจะแสดงรายการทั้งสองประเภทของไดเรกทอรีที่ด้านบน แต่จะไม่แยกความแตกต่างระหว่างไดเรกทอรีที่เหมาะสมและไดเรกทอรี symlinked ซึ่งทำให้เกิดความสับสนอีกครั้ง สามารถlsแสดงไดเรกทอรี symlinked ด้านบนในขณะที่ยังคงแตกต่างจากไดเรกทอรีปกติได้หรือไม่ แก้ไข:bashฉันใช้
9 bash  zsh  directory  ls  symlink 

4
วิธีการตรวจสอบสิทธิ์กลุ่มของไฟล์
ฉันต้องการตรวจสอบการอนุญาตกลุ่มของไฟล์จากสคริปต์ทุบตี โดยเฉพาะฉันต้องตรวจสอบว่าไฟล์มีบิตของกลุ่มที่สามารถเขียนได้หรือไม่ แค่นั้นแหละ. เรียบง่ายเหมือนที่ อย่างไรก็ตาม: ฉันยังต้องการสิ่งนี้เพื่อพกพา test -w <file จะไม่บอกฉันว่ามันเป็นกลุ่มที่เขียนได้ ผลลัพธ์ของls -ldดีสำหรับมนุษย์ แต่ไม่แน่ใจเกี่ยวกับสคริปต์ ในทางเทคนิคแล้วฉันสามารถแยกวิเคราะห์เอาต์พุตเช่นdrwxrwxr-xเพื่อแยกบิตกลุ่ม แต่ดูเหมือนจะเปราะ อินเทอร์เฟซสำหรับstatเข้ากันไม่ได้อย่างสมบูรณ์ระหว่าง OS X และระบบอื่น ๆ find <file> -perm ... ไม่สามารถเป็นคำตอบได้ใช่ไหม
9 bash  permissions  ls  stat 


4
ทำรายการไฟล์ซ้ำด้วยชื่อไฟล์ชื่อโฟลเดอร์และการอนุญาต
มีอยู่ฉันสามารถแสดงรายการไฟล์โดยพิมพ์คำสั่งในเชลล์ที่แสดงชื่อไฟล์ชื่อโฟลเดอร์และการอนุญาตใน CentOS ทั้งหมดหรือไม่
9 files  permissions  find  ls 

2
อะไรคือจุดของ ls -f (หรือทำไมสิ่งนี้ถึงแขวนอยู่)
ฉันมีไดเรกทอรีที่มีประมาณ 100,000 ไฟล์อยู่ในนั้น ls -f ค้างไว้นานกว่าหนึ่งนาที ฉันวิ่งตาม strace และเริ่มเห็น getdents ในทันทีดังนั้น ls จึงอ่านไดเรกทอรีอย่างชัดเจน ฉันเห็นการโทรไปยัง brk เป็นจำนวนมากดังนั้น ls จึงบัฟเฟอร์สิ่งต่าง ๆ ในหน่วยความจำอย่างชัดเจน ฉันเขียนโปรแกรมง่าย ๆ ที่เรียก readdir และชื่อไฟล์ output และมันจะตอบสนองทันที แต่ ls -f ไม่ได้ให้ผลลัพธ์ สิ่งที่ช่วยให้? ฉันคิดว่าจุดทั้งหมดของ -f คือมันทำให้ ls ไม่ทำอะไรมากไปกว่า readdir มีวิธีพกพาและเชื่อถือได้ในการแสดงรายการเนื้อหาของไดเรกทอรีหรือไม่? (หมายเหตุนี่คือ ls จาก coreutils ของ gnu บน Linux) -EDIT- มีนามแฝงอยู่ในสถานที่ แต่ …
9 linux  ls  gnu  coreutils 

3
ขนาดบล็อกไฟล์ - ความแตกต่างระหว่าง stat และ ls
ฉันสังเกตเห็นว่าเมื่อฉันทำ: ls -ls file มันให้นับบล็อกพูด 8 บล็อก เมื่อฉันทำ: stat file ฉันสังเกตเห็นว่าการนับบล็อกเป็น 16 สองเท่าของจำนวนที่ได้รับ ขนาดบล็อกในระบบไฟล์ของฉันคือ 4096 ฉันได้เรียนรู้ว่าหน่วยโดยพลการสำหรับบล็อกที่ใช้โดย ls คือ 1024 มันถูกต้องหรือไม่ที่จะบอกว่าสถิตินั้นใช้หน่วยโดยพลการขนาด 512 ไบต์เมื่อรายงานบล็อก? ถ้าเป็นเช่นนั้นมีเหตุผลที่ไม่สอดคล้องกันหรือไม่? ฉันใช้ Ubuntu 11.10 กับระบบไฟล์ ext4

2
ฉันจะใช้อักขระตัวแทนลักษณะ ms-dos กับ ls และ mv ได้อย่างไร
ฉันมีความโชคร้ายที่มาจากพื้นหลังของ MS-DOS - แต่อย่างน้อยก็ทำให้ฉันซาบซึ้งว่า Linux มีประสิทธิภาพมากขึ้นเพียงใด ฉันกำลังพยายามทำให้ Linux-Fu ของฉันใกล้เคียงกัน แต่มีสองสิ่งที่สามารถทำได้กับ DOS ซึ่งฉันไม่แน่ใจว่าจะทำอย่างไรให้สำเร็จได้อย่างง่ายดายด้วย Linux: การเปลี่ยนชื่อไฟล์หลาย ๆ ไฟล์ - การใช้สัญลักษณ์สองตัว c:\> dir Directory of c:\ file1.txt file2.txt file3.txt file4.txt c:\>rename *.txt *.bak c:\> dir Directory of c:\ file1.bak file2.bak file3.bak file4.bak ฉันรู้ว่าฉันสามารถใช้find -execที่นี่ แต่มันเป็นไปได้ที่จะใช้ไวยากรณ์ที่สั้นกว่า - บางทีอาจจะmvมีการตั้งค่าสถานะพิเศษหรือไวยากรณ์บางอย่าง? ฉันเดาว่ากุญแจตัวนี้คือwildcard ตัวที่สอง *เนื่องจาก linux ไม่ควรมีปัญหากับอันแรก (เช่นฉันรู้วิธีเลือกไฟล์ที่ฉันต้องการเปลี่ยนชื่อโดยใช้ …

6
เปรียบเทียบไฟล์ที่อยู่ในไดเรกทอรี 1 แต่ไม่ใช่ไดเรกทอรี 2 หรือไม่
ฉันมีปัญหากับสคริปต์ทุบตีที่ฉันต้องการ ฉันรู้ว่า ls จะแสดงรายการไฟล์ที่อยู่ในไดเรกทอรี แต่ฉันต้องการให้แสดงรายการไดเรกทอรีที่อยู่ใน directory1 แต่ไม่อยู่ใน directory2 แล้วจึงแสดงรายการไฟล์ใน directory2 ที่ไม่ได้อยู่ใน directory1 ในความพยายามที่อ่อนแอฉันพยายาม: ls -al | diff directory1 directory2 ฉันรู้ได้อย่างรวดเร็วว่าทำไมมันไม่ทำงาน ใครสามารถช่วยทุบตีคนบ้าคลั่งทั้งหมดได้หรือไม่?
9 bash  shell-script  ls  diff 

1
ฉันจะได้รับรายชื่อแบบยาวสำหรับไดเรกทอรีเดียวได้อย่างไร
ฉันต้องการที่จะเห็นรายชื่อยาวสำหรับไดเรกทอรีเดียว เมื่อฉันพิมพ์ls -lhaฉันจะเห็นสิ่งนี้: drwxrwxr-x 4 username groupname 4.0K 2010-08-05 09:55 files drwxrwxr-x 7 username groupname 4.0K 2010-08-05 14:25 trunk drwxrwxr-x 8 username groupname 4.0K 2010-08-05 16:02 phpincludes drwxrwxr-x 11 username groupname 4.0K 2010-07-26 12:31 phpMyAdmin-3.3.5-english อย่างไรก็ตามเมื่อฉันพิมพ์ls -lha phpMyAdmin-3.3.5ฉันจะได้รับรายชื่อของเนื้อหาของไดเรกทอรี ฉันจะพิมพ์คำสั่งเพื่อให้เห็นได้อย่างไร drwxrwxr-x 11 username groupname 4.0K 2010-07-26 12:31 phpMyAdmin-3.3.5-english ? ฉันต้องการทำสิ่งนี้กับไดเรกทอรี symlinked …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.