Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
tablo-değerli fonksiyon
Şunun için geçerlidir:
Databricks SQL
Databricks Runtime 18 LTS ve üzeri
Important
Bu özellik Beta sürümündedir. Çalışma alanı yöneticileri Bu özelliğe erişimi Önizlemeler sayfasından denetleyebilir. Bkz. Azure Databricks önizlemelerini yönetme.
Bir yoldaki dosya listesini, her dosya için bir FILE referans dahil olmak üzere döndürür.
Syntax
list_files(path [, connection => connection ] [, recursive => recursive ])
Arguments
-
path: Listeye giden birSTRINGyol. Hacim yolu, harici konum yolu veya SFTP, SharePoint veya Google Drive gibi başka bir dosya depolama sisteminde bir yol olabilir. -
connection: SFTP, SharePoint veya Google Drive gibi sistemlerle kimlik doğrulama için kullanılan isteğe bağlı bir Unity Kataloğu bağlantısı. -
recursive: Fonksiyonun alt dizinlere inip inmediğini kontrol eden bir isteğeBOOLEANbağlı. Kabul edilen değerler şunlardır:-
true: Yoldaki dosyaları ve tüm alt dizinlerini listeler, dizinleri döndürmez. Bu varsayılan değerdir. -
false: Yolun sadece hemen girdilerini listeler ve referans venullbir gönderimlifiledizinlerisize0döndürür.
-
ve connectionrecursive argümanları isimle geçilmelidir, => örneğin connection => my_connsözdizimi kullanılarak .
İadeler
Dosya başına bir satır olan ve aşağıdaki sütunlara sahip bir tablo:
| Column | Türü | Description |
|---|---|---|
path |
STRING |
Dosyanın yolu. |
size |
BIGINT |
Dosyanın bayt cinsinden boyutu. |
modification_time |
TIMESTAMP |
Dosyanın son modifikasyon zamanı, UTC'de. |
file |
FILE |
Dosyaya bir gönderme. |
Yaygın hata koşulları
LIST_FILES_AUTHORIZATION_ERROR.ON_PATHLIST_FILES_AUTHORIZATION_ERROR.ON_CONNECTIONLIST_FILES_ERROR.PATH_NOT_EXISTSLIST_FILES_ERROR.CONNECTION_NOT_EXISTS
Daha fazla bilgi için bkz. Azure Databricks'te Hata koşulları.
Examples
Dosyaları bir hacim dizininde listelemek için:
SELECT * FROM list_files('/Volumes/my_catalog/my_schema/my_volume/');
Fonksiyon, dosya başına bir satır döndürür:
path size modification_time file
/Volumes/my_catalog/my_schema/my_volume/file1.json 1234 2026-04-11 00:00:00.000 <file>
Unity Kataloğu bağlantısı kullanarak harici bir sistemden dosyaları listelemek için:
SELECT path, size FROM list_files('https://drive.google.com/drive/folders/my-folder-id', connection => my_gdrive_connection);
Bir dizinin sadece hemen girdilerini listelemek için şu şekilde ayarlanır recursivefalse:
SELECT * FROM list_files('/Volumes/my_catalog/my_schema/my_volume/', recursive => false);
Dizinler, sonuçlarda bir nullfile referans ve size bir adıyla:0
path size modification_time file
/Volumes/my_catalog/my_schema/my_volume/file1.json 1234 2026-04-11 00:00:00.000 <file>
/Volumes/my_catalog/my_schema/my_volume/subdir/ 0 2026-04-11 00:00:00.000 NULL
Bir dizindeki tüm dosyaların toplam boyutunu hesaplamak için sütunu size toplamaktır. Varsayılan recursive olarak true, bu alt dizinlerdeki dosyaları da kapsar:
SELECT sum(size) AS total_bytes FROM list_files('/Volumes/my_catalog/my_schema/my_volume/');
Sorgu, bayt cinsinden birleşik boyutu döndürür:
total_bytes
1234