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

globs เรียกว่ารูปแบบ [เชลล์] อย่างถูกต้องและเรียกอีกอย่างว่านิพจน์ไวลด์การ์ดเป็นตัวอย่างของภาษาที่จับคู่รูปแบบที่ใช้ในหลาย ๆ เชลล์ที่เหมือน POSIX เพื่อจับคู่ชื่อไฟล์และสตริง: เช่น "* .c` เป็นลูกโลกสำหรับไฟล์ต้นฉบับ C และจับคู่ไฟล์ใด ๆ ที่มีส่วนต่อท้าย (ส่วนขยาย) เป็น" .c`

25
วิธีใช้ glob () เพื่อค้นหาไฟล์ซ้ำ ๆ
นี่คือสิ่งที่ฉันมี: glob(os.path.join('src','*.c')) แต่ฉันต้องการค้นหาโฟลเดอร์ย่อยของ src สิ่งนี้จะทำงาน: glob(os.path.join('src','*.c')) glob(os.path.join('src','*','*.c')) glob(os.path.join('src','*','*','*.c')) glob(os.path.join('src','*','*','*','*.c')) แต่เห็นได้ชัดว่ามีข้อ จำกัด และ clunky

5
วิธีการวนซ้ำไฟล์ในไดเรกทอรีและเปลี่ยนเส้นทางและเพิ่มคำต่อท้ายชื่อไฟล์
ฉันต้องเขียนสคริปต์ที่เริ่มต้นโปรแกรมของฉันด้วยอาร์กิวเมนต์ที่ต่างกัน แต่ฉันใหม่สำหรับ Bash ฉันเริ่มโปรแกรมด้วย: ./MyProgram.exe Data/data1.txt [Logs/data1_Log.txt]. นี่คือรหัสเทียมสำหรับสิ่งที่ฉันต้องการจะทำ: for each filename in /Data do for int i = 0, i = 3, i++ ./MyProgram.exe Data/filename.txt Logs/filename_Log{i}.txt end for end for ดังนั้นฉันจึงงงว่าจะสร้างอาร์กิวเมนต์ที่สองจากอันแรกได้อย่างไรดูเหมือน dataABCD_Log1.txt และเริ่มโปรแกรมของฉัน
562 bash  for-loop  filenames  glob 

11
ฉันจะใช้อักขระตัวแทนที่ตรงกันข้ามหรือเชิงลบเมื่อจับคู่รูปแบบในเชลล์ unix / linux ได้อย่างไร
ว่าฉันต้องการคัดลอกเนื้อหาของไดเรกทอรีที่ไม่รวมไฟล์และโฟลเดอร์ที่มีชื่อมีคำว่า 'Music' cp [exclude-matches] *Music* /target_directory สิ่งที่ควรแทนที่ [ไม่รวมการจับคู่] เพื่อทำสิ่งนี้ให้สำเร็จ


14
รับรายการไฟล์ที่ถูกกรองในไดเรกทอรี
ฉันกำลังพยายามรับรายการไฟล์ในไดเรกทอรีโดยใช้ Python แต่ฉันไม่ต้องการรายการไฟล์ทั้งหมด สิ่งที่ฉันต้องการเป็นหลักคือความสามารถในการทำสิ่งต่อไปนี้ แต่ใช้ Python และไม่เรียกใช้ ls ls 145592*.jpg หากไม่มีวิธีการในตัวสำหรับสิ่งนี้ฉันกำลังคิดที่จะเขียนลูปสำหรับวนซ้ำเพื่อทำซ้ำผลลัพธ์ของos.listdir()และเพื่อผนวกไฟล์ที่ตรงกันทั้งหมดลงในรายการใหม่ อย่างไรก็ตามมีไฟล์จำนวนมากในไดเรกทอรีนั้นและฉันหวังว่าจะมีวิธีที่มีประสิทธิภาพมากขึ้น (หรือวิธีการในตัว)

20
วิธีนับจำนวนไฟล์ในไดเรกทอรีโดยใช้ Python
ฉันต้องนับจำนวนไฟล์ในไดเรกทอรีโดยใช้ Python ฉันเดาว่าวิธีที่ง่ายที่สุดคือlen(glob.glob('*'))แต่นั่นก็นับไดเรกทอรีเองเป็นไฟล์ มีวิธีการนับเฉพาะไฟล์ในไดเรกทอรีหรือไม่?
224 python  count  glob  fnmatch 

19
ทดสอบว่ากลมมีการแข่งขันใด ๆ ในทุบตี
ถ้าผมต้องการที่จะตรวจสอบการดำรงอยู่ของไฟล์เดียวที่ฉันสามารถทดสอบได้โดยใช้หรือtest -e filename[ -e filename ] สมมติว่าฉันมี glob และฉันต้องการที่จะรู้ว่ามีไฟล์ใด ๆ ที่มีชื่อตรงกับ glob glob สามารถจับคู่ไฟล์ 0 (ในกรณีที่ฉันไม่ต้องทำอะไร) หรือสามารถจับคู่ไฟล์ 1 ไฟล์หรือมากกว่า (ซึ่งในกรณีนี้ฉันต้องทำบางสิ่ง) ฉันจะทดสอบว่า glob มีคู่ที่ตรงกันได้อย่างไร (ฉันไม่สนใจว่ามีการแข่งขันกี่รายการและมันจะดีที่สุดถ้าฉันสามารถทำสิ่งนี้ด้วยifคำสั่งเดียวและไม่มีการวนซ้ำ(เพียงเพราะฉันพบว่าการอ่านที่มากที่สุด) ( test -e glob*ล้มเหลวหาก glob ตรงกับมากกว่าหนึ่งไฟล์)
223 bash  glob 

11
เพิ่มไฟล์ซ้ำตามรูปแบบซ้ำ ๆ
ฉันจะเพิ่มไฟล์ซ้ำโดยใช้รูปแบบ (หรือ glob) ในไดเรกทอรีอื่นได้อย่างไร ตัวอย่างเช่นฉันต้องการเพิ่มA/B/C/foo.javaและD/E/F/bar.java(และไฟล์ java อื่น ๆ อีกหลายไฟล์) ด้วยคำสั่งเดียว: git add '*.java' น่าเสียดายที่มันใช้งานไม่ได้ตามที่คาดไว้
172 git  glob  filepattern 

14
ย้ายไฟล์ทั้งหมดยกเว้นหนึ่งไฟล์
ฉันจะย้ายไฟล์ทั้งหมดยกเว้นหนึ่งไฟล์ได้อย่างไร ฉันกำลังมองหาบางสิ่งที่ชอบ: 'mv ~/Linux/Old/!Tux.png ~/Linux/New/' ที่ผมย้ายสิ่งเก่าที่จะ -folder Tux.pngสิ่งใหม่ยกเว้น ! -sign แสดงถึงการปฏิเสธ มีเครื่องมือสำหรับงานบ้างไหม?
155 linux  bash  glob 

30
Python glob หลายประเภทไฟล์
มีวิธีที่ดีกว่าในการใช้ glob.glob ใน python เพื่อรับรายการประเภทไฟล์หลายประเภทเช่น. txt, .mdown และ. markdown หรือไม่ ตอนนี้ฉันมีสิ่งนี้: projectFiles1 = glob.glob( os.path.join(projectDir, '*.txt') ) projectFiles2 = glob.glob( os.path.join(projectDir, '*.mdown') ) projectFiles3 = glob.glob( os.path.join(projectDir, '*.markdown') )
150 python  glob 

18
ใช้. gignignore เพื่อละเว้นทุกสิ่งยกเว้นไดเรกทอรีเฉพาะ
ปัญหาของฉันคือฉันมีเว็บไซต์ WordPress มากมายใน repo คอมไพล์ของฉันซึ่งฉันต้องการเลือกเฉพาะเนื้อหาของฉัน themesโฟลเดอร์เท่านั้นโดยไม่สนใจไฟล์ที่เหลือที่เหลือใน WordPress ฉันเคยใช้ไฟล์. gignignore เพื่อเพิกเฉยต่อชนิดไฟล์ก่อนหน้านี้ แต่สามารถใช้วิธีอื่น ๆ ได้ไหมนั่นคือการข้ามทุกสิ่ง root (git repo) - / wordpress - - / (WordPress Site 1) / wp-content / themes - - / (WordPress Site 2) / wp-content / ธีม - - / (WordPress Site 3) / wp-content / ธีม Thanks- …
140 git  gitignore  glob 

7
วนซ้ำไฟล์ทั้งหมดที่มีนามสกุลเฉพาะ
for i in $(ls);do if [ $i = '*.java' ];then echo "I do something with the file $i" fi done ฉันต้องการวนซ้ำแต่ละไฟล์ในโฟลเดอร์ปัจจุบันและตรวจสอบว่าตรงกับนามสกุลที่ระบุหรือไม่ โค้ดด้านบนใช้ไม่ได้คุณรู้ไหมว่าทำไม?
110 bash  file  glob 

10
รูปแบบที่ไม่รวม glob
ฉันมีไดเร็กทอรีที่มีไฟล์มากมายอยู่ภายใน: eee2314, asd3442... และeph. ฉันต้องการที่จะแยกไฟล์ทั้งหมดที่เริ่มต้นด้วยการephที่มีglobฟังก์ชั่น ฉันจะทำมันได้อย่างไร?
110 python  glob 

2
gulp globbing- วิธีดูทุกอย่างด้านล่างไดเรกทอรี
นี่คือคำถามโง่สวย แต่ผมยังไม่ได้รับจริงๆสามารถที่จะหาคำตอบที่น่าพอใจ: ฉันจะใช้อึก globbing เพื่อเลือกวิธีทุกไฟล์ในทุกไดเรกทอรีย่อยด้านล่างไดเรกทอรีหนึ่ง? ฉันพยายามแล้ว: './src/less' './src/less/' './src/less/*' ดูเหมือนจะไม่ได้ผล
108 glob  gulp 

12
ฉันจะค้นหาโฟลเดอร์ย่อยโดยใช้โมดูล glob.glob ได้อย่างไร
ฉันต้องการเปิดชุดโฟลเดอร์ย่อยในโฟลเดอร์และค้นหาไฟล์ข้อความและพิมพ์ไฟล์ข้อความบางบรรทัด ฉันใช้สิ่งนี้: configfiles = glob.glob('C:/Users/sam/Desktop/file1/*.txt') แต่ไม่สามารถเข้าถึงโฟลเดอร์ย่อยได้เช่นกัน มีใครรู้บ้างว่าฉันสามารถใช้คำสั่งเดียวกันเพื่อเข้าถึงโฟลเดอร์ย่อยได้อย่างไร

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