exporter komut satırı
Dışa aktarımlarınızı Terminal'den, cron'dan, yedekleme araçlarından ve ajanlardan çalıştırın.
exporter, penceresiz çalıştırılan Exporter Mac uygulamasıdır. Uygulamada kurduğunuz bağlantıları, dışa aktarma klasörlerini, seçimi ve ayarları kullanır ve aynı dışa aktarma günlüğüne yazar. Uygulama kapalıyken de çalışır ve asla soru sormaz: eksik olan her şey çalıştırmayı 2 çıkış koduyla ve ne yapılması gerektiğini söyleyen tek bir satırla durdurur. Yalnızca macOS.
Kurulum
- Exporter’ı Mac App Store’dan (indir) yükleyin ve açın.
- Bir uygulamayı (Apple Notes, Bear, Logseq, Kişiler, Mesajlar ya da Ekran Süresi) veya bir Belgeler klasörünü bağlayın ve dışa aktarma klasörünü seçin (başlarken). Bu izinler yalnızca uygulamada verilebilir.
- Uygulamanın Komut Satırı kartında “kurulum komutunu kopyala” düğmesine basın ve komutu Terminal’e bir kez yapıştırın.
Uygulama sanal alanda çalışır ve PATH’inize yazamaz; son adımın bir yapıştırma olmasının nedeni budur. Satır, /opt/homebrew/bin klasörü varsa ve size aitse exporter komutunu oraya (sudo olmadan), yoksa sudo ile /usr/local/bin klasörüne yükler. Tekrar yapıştırmak güvenlidir; orada ne varsa onun yerine geçer. exporter help install, Mac’iniz için satırı yazdırır.
Kaynaklar
--source bunlardan birini alır:
| kaynak | bunlar da kabul edilir | yazdığı |
|---|---|---|
apple |
apple-notes, applenotes, notes |
markdown ya da html |
bear |
markdown ya da html | |
logseq |
her zaman markdown | |
contacts |
apple-contacts, addressbook |
her zaman markdown |
messages |
imessage, chats, conversations |
her zaman markdown |
screentime |
screen-time, usage |
her zaman markdown, gün başına bir dosya |
documents |
docs, files, pdf |
Documents kartında işaretlenen biçimler |
Biçimler
--format, markdown (ya da md) veya html alır; büyük/küçük harf fark etmez. Başka bir değer error: --format pdf: expected markdown | html ile ve 64 çıkış koduyla durur.
- bu bayrak olmadan
syncher uygulamayı kartında ayarlanan biçimde yazar (Apple Notes ve Bear için ayrı ayrı ayarlanır),exportise dışa aktardığı uygulamanın ayarını yazar; geçerli ayarlarıexporter help syncveexporter help exportgösterir - Logseq, Kişiler, Mesajlar ve Ekran Süresi her zaman markdown yazar, Belgeler ise kartında işaretlenen biçimleri yazar; bu yüzden bunlar için
--format htmlbir notla yok sayılır:note: logseq export is always markdown, so --format is ignored for this source. - Apple Notes her not için bir
.htmlsayfası yazar (HTML biçimi); ekler yanındakiattachments/klasörüne kopyalanır ve bağlanır, front matter yoktur. Bear HTML’si ise bir<pre>içindeki düz not metnidir, biçimlendirme yoktur ve ek başvuruları Markdown metni olarak kalır: dosyalar kopyalanır, bağlanmaz - MCP sunucusu yalnızca markdown dosyalarını okur, bu yüzden yalnızca HTML olan bir dışa aktarım onun için görünmezdir
- Apple Notes ve Bear her çalıştırmada tek biçim yazar; ikisini tek eşitlemede yalnızca Belgeler yazar. Bir çalıştırma yalnızca kendi biçimindeki eski dosyaları kaldırır, bu yüzden biçim değiştirmek diğer biçimin dosyalarını klasörde bırakır. İki biçim için de her birine kendi klasörünü verin:
exporter export --dest ~/Backups/notes-md --format markdown
exporter export --dest ~/Backups/notes-html --format html
sync
Uygulamada yapılandırdığınız dışa aktarımı bir kez, artımlı olarak, uygulamanın dışa aktarma klasörlerine çalıştırır.
exporter sync [--source <source>]... [--format markdown|html] [--full] [--json] [--quiet]
| bayrak | ne yapar | varsayılan |
|---|---|---|
--source <source> |
yalnızca bu uygulama, tekrarlanabilir | bağlı her uygulama; bağlı olmayanlar atlanır |
--format markdown|html |
yalnızca bu çalıştırma için, uygulama ayarınız değişmez. Diğer biçimle aynı dışa aktarma klasörüne yazılır; ikisini de tutmak için her birini export --dest ile kendi klasörüne dışa aktarın |
uygulama ayarınız |
--full |
her şeyi yeniden dışa aktarır. Yazmadan önce yalnızca Exporter’ın yazdığı dosyaları kaldırır; dışa aktarma klasöründeki diğer her şey kalır | kapalı |
--json |
makine tarafından okunabilir bir özet | kapalı |
--quiet, -q |
yalnızca hatalar | kapalı |
exporter sync --source apple
apple notes: exporting…
apple notes: 1204 of 1204 exported · 3 removed · 18.2s · markdown → /Users/me/Documents/notes
Özet satırı <source>: <succeeded> of <selected> exported biçimindedir; ardından varsa N failed, N removed (silinen, yeniden adlandırılan ya da taşınan öğelerin dosyaları), N attachment issues, sonra süre, biçim ve yazılan klasör gelir.
Uygulama çalışıyorsa sync hiçbir şey dışa aktarmaz, 0 ile çıkar ve Exporter is running: real-time sync is live, the export root is already current. yazdırır.
export
Anlık görüntüler ve betikler için, seçtiğiniz bir klasöre tek seferlik bir dışa aktarım. Uygulama açıkken de sorunsuz çalışır.
exporter export --dest <folder> [--source <source>] [--format markdown|html] [--organize folders|tags|smart] [--folder "Name"]... [--tag name]... [--dry-run] [--json] [--quiet]
| bayrak | ne yapar | varsayılan |
|---|---|---|
--dest <folder> |
zorunlu. Uygulamanın Komut Satırı kartında (“klasör ekle…”) izin verilmiş bir klasörün içinde olmalıdır. ~/Backups için verilen bir izin, altındaki her klasörü kapsar |
yok |
--source <source> |
dışa aktarılacak uygulama | apple |
--format markdown|html |
bu çalıştırmanın biçimi | uygulama ayarınız |
--organize folders|tags|smart |
yalnızca Apple Notes: notların klasörlere nasıl yerleştirileceği | uygulama ayarınız |
--folder "Name" |
yalnızca bu Apple Notes klasörü, tekrarlanabilir, ad büyük/küçük harf ayrımı olmadan eşleşir | uygulamada kaydedilen seçim |
--tag name |
yalnızca bu etiket, tekrarlanabilir, Apple Notes ya da Bear | uygulamada kaydedilen seçim |
--dry-run |
neyin dışa aktarılacağını yazdırır, hiçbir şey yazmaz | kapalı |
--json, --quiet (-q) |
sync ile aynı | kapalı |
--folder ya da --tag olmadan Apple Notes ve Bear, uygulamada kaydedilen seçimi dışa aktarır. Logseq tüm grafı, Kişiler her kartı, Mesajlar her sohbeti, Ekran Süresi her günü dışa aktarır; filtreler bunlar için bir notla birlikte yok sayılır.
exporter export --dest ~/Backups/notes-$(date +%F)
exporter export --dest ~/Backups/work --folder "Work" --format html
exporter export --dest ~/Backups/bear --source bear --tag journal
exporter export --dest ~/Backups/people --source contacts
exporter export --dest ~/Backups/papers --source documents
exporter export --dest ~/Backups/notes --dry-run
would export 100 apple notes · markdown → /Users/me/Backups/notes
list
exporter list sources|folders|tags|dests [--source apple|bear] [--json]
| liste | ne gösterir | JSON |
|---|---|---|
sources |
bağlı olsun olmasın her uygulama, sayısıyla birlikte. Belgeler listelenmez | [{"source": "apple", "connected": true, "notes": 1204}, {"source": "messages", "connected": true, "conversations": 1532}, {"source": "bear", "connected": false}]; logseq için pages, contacts ve screen-time için days ile |
folders |
not sayılarıyla Apple Notes klasörleri, derinliğe göre girintili. --source bear bir hatadır (çıkış 64) |
[{"name": "Work", "notes": 42, "level": 0}] |
tags |
sayılarıyla etiketler, varsayılan olarak Apple Notes, --source bear ile Bear |
[{"name": "journal", "notes": 12}] |
dests |
export --dest komutunun yazabileceği klasörler ve her uygulamanın dışa aktarma klasörü |
[{"path": "/Users/me/Backups", "kind": "granted"}]; kind değeri granted, granted, volume not mounted ya da export root (apple-notes) olur |
exporter list folders --json
[{"name": "Work", "notes": 42, "level": 0}]
status
exporter status [--json]
apple notes connected · last export 2026-09-11 03:00
bear not connected
logseq not connected
contacts not connected
messages connected · last export 2026-09-11 03:01
screen time not connected
documents not connected
root (apple-notes) /Users/me/Documents/notes
root (messages) /Users/me/Documents/messages
destinations /Users/me/Backups
version 3.24 · free · 100 of 100 free notes used
messages free · 10 of 10 free conversations used
app not running
--json ile: apple-notes, bear, logseq, contacts, messages, screen-time, documents adlı uygulamaların her biri için bir nesne, her biri {"connected": true, "lastExport": "2026-09-11 03:00"} (hiç dışa aktarılmadıysa null); destinations (yollar); tier (full ya da free, Apple Notes kilidi) ve freeNotesUsed; contactsTier ve freeContactsUsed; messagesTier ve freeConversationsUsed; screenTimeTier ve freeDaysUsed; appRunning. Saatler yereldir, yyyy-MM-dd HH:mm.
log
En yenisi başta olmak üzere son dışa aktarma çalıştırmaları: uygulamanın gösterdiği günlüğün aynısı, her dışa aktarma klasöründen ve izin verilmiş her --dest klasöründen. İzin verilmiş bir klasörün altında oluşturulan tarihli klasörler okunmaz; onların kaydı <folder>/.exporter/ içindedir.
exporter log [--last N] [--json]
| bayrak | ne yapar | varsayılan |
|---|---|---|
--last N |
kaç çalıştırma | 10 |
--json |
çalıştırma başına bir nesne | kapalı |
2026-09-11 03:00 apple-notes 1204/1204 exported 3 removed clean → /Users/me/Documents/notes
JSON: [{"source", "finishedAt", "selected", "succeeded", "failed", "format", "status", "destination", "prunedFiles", "runError"}]. status değeri clean, warnings (eksik ekler) ya da failures olur.
doctor
Penceresiz dışa aktarımın çalışacağını denetler ve her denetim için bir satır yazdırır: ok, altında bir fix: satırıyla FAIL, warn ya da bilgi için --.
exporter doctor
Bağlı her uygulamanın veritabanının okunabilir ve dışa aktarma klasörünün yazılabilir olduğunu, kaydedilen her klasör izninin çözümlendiğini, her --dest klasörünün yazılabilir olduğunu, dizini ve yüklü komutu denetler. Sonunda sürüm katmanını, uygulamanın çalışıp çalışmadığını ve varsa son çökmeyi gösterir. 0 ile çıkış all good., 2 ile çıkış N problem(s) found. yazdırır.
report
Bir tanılama raporu (uygulama sürümü, macOS ve donanım, bağlantı durumu, son çalıştırmalar, son çökme; not içeriği yok) yazdırır ve panoya kopyalar.
exporter report [--send] [--email <addr>]
| bayrak | ne yapar | varsayılan |
|---|---|---|
--send |
raporu bize gönderir ve sent. ya da offline: queued, will send on the next run or app launch. yazdırır |
kapalı |
--email <addr> |
size yanıt verebilmemiz için adresinizi ekler | yok |
help ve version
exporter help [topic]: konularsync,export,list,status,log,doctor,report,cron,install. Bir komutun yardımı, geçerli ayarlarınızı varsayılanlar olarak gösterirsync,export,list,logvereportayrıca--helpya da-halırexporter version(ya da--version,-v)exporter 3.24yazdırır- bir terminalde tek başına
exportergenel bakışı yazdırır ve 64 ile çıkar
JSON çıktısı
--json; sync, export, list, status ve log ile çalışır. Çıktı, anahtarlar sıralı ve okunaklı biçimde yazdırılır. sync ve export için --quiet ekleyin: o olmadan ilerleme ve not satırları JSON’dan önce stdout’a yazdırılır. export tek bir özet nesnesi yazdırır, sync ise kaynak başına bir tane olmak üzere {"runs": [...]} yazdırır:
{
"attachmentIssues" : 0,
"durationSec" : 18.2,
"failed" : 0,
"format" : "markdown",
"root" : "/Users/me/Documents/notes",
"runError" : null,
"selected" : 1204,
"source" : "apple-notes",
"status" : "clean",
"succeeded" : 1204
}
Uygulama çalışırken sync tek satırını yazdırır ve JSON yazdırmaz. Hatalar stderr’e error: <what happened and what to do> olarak gider.
Çıkış kodları
| kod | anlamı |
|---|---|
| 0 | tamam, ücretsiz kotanın yarıda kestiği bir çalıştırma dahil |
| 1 | dışa aktarma hataları: bir öğe başarısız oldu, çalıştırma bir hatayla karşılaştı ya da öğe seçip hiçbirini yazmadı |
| 2 | kurulum gerekiyor: uygulama bağlı değil, klasöre izin verilmemiş, klasör ya da etiket bulunamadı, dışa aktarılacak bir şey yok; doctor sorun buldu; yüklü komut eski biçimde ya da gösterdiği uygulama artık yok |
| 64 | kullanım: bilinmeyen komut ya da bayrak, eksik ya da hatalı değer, Bear ile --folder, list folders --source bear, bir terminalde tek başına exporter |
Dosyalar nereye gider
sync, Exporter’da her uygulama için ayarlanan dışa aktarma klasörüne yazar, örneğin ~/Documents/notes ya da ~/Documents/messages; export ise --dest klasörüne yazar. Ana klasörünüz düzeyindeki ya da onun bir altındaki bir klasör, örneğin ~/Documents’ın kendisi, uygulama başına bir alt klasör alır (notes-export, messages-export ve benzeri); daha derindeki bir klasör olduğu gibi kullanılır. Özet satırı (oktan sonra) ve JSON’daki root gerçek klasörü gösterir.
Her dışa aktarma klasörü .exporter/last-export.json ve .exporter/last-export.md (son çalıştırma) ile .exporter/history/ (son 50 çalıştırma) içerir. Apple Notes, Kişiler, Mesajlar, Ekran Süresi ve Belgeler ayrıca bir çalıştırmanın yazdığı her dosyayı listeleyen .exporter/files.json dosyasını tutar: sonraki çalıştırma yalnızca burada listelenen ve artık hiçbir öğenin üretmediği dosyaları kaldırır (Ekran Süresi bir gün dosyasını asla kaldırmaz). Bear ve Logseq de sildiğiniz, yeniden adlandırdığınız ya da etiketini değiştirdiğiniz notların dosyalarını sonraki çalıştırmada kaldırır. Apple Notes ve Logseq dışa aktarımları ayrıca Obsidian görünümleri içeren bases/ alır.
Ücretsiz kota
Komut satırının kotaları uygulamanınkiyle aynıdır:
| uygulama | ücretsiz |
|---|---|
| Apple Notes | 100 not |
| Kişiler | 100 kişi |
| Mesajlar | en son 10 sohbet |
| Ekran Süresi | ilk eşitlemedeki en son 10 gün ve yalnızca onlar: sonraki günler için kilit açma gerekir |
| Belgeler | en son değiştirilen 10 belge |
| Bear ve Logseq | sınırsız |
Önceden dışa aktarılmış öğeler ücretsiz yeniden eşitlenmeye devam eder; kota yalnızca yenilerini durdurur. Kotaya ulaşan bir çalıştırma yine de izin verileni dışa aktarır, 0 ile çıkar ve bir not yazdırır (--quiet altında değil):
note: 42 note(s) skipped: free version limit (100 of 100 free notes). upgrade in the app to export everything.
note: 58 contact(s) skipped: free version limit (100 of 100 free contacts). unlock contacts in the app to export everything.
note: 1522 conversation(s) skipped: free version limit (10 of 10 free conversations). unlock messages in the app to export everything.
note: 11 day(s) skipped: free version limit (10 of 10 free days). unlock screen time in the app to archive every day.
note: 5 document(s) skipped: free version limit (10 of 10 free documents). unlock documents in the app to convert every one.
status --json, Apple Notes, Kişiler, Mesajlar ve Ekran Süresi için katmanı ve kullanılan sayıyı taşır. Sınırlı her uygulamanın kilidi Exporter içinde, fiyatı ülkeye göre belirlenen kendi tek seferlik uygulama içi satın almasıyla açılır; abonelik yok, web’de ödeme yok. Komut satırı satın almayı her çalıştırmada okur; App Store 5 saniye içinde yanıt vermezse çalıştırma ücretsiz kotayla devam eder.
Zamanlama
exporter help cron, bu satırları Mac’inizdeki komutun tam yoluyla yazdırır: onu kullanın, çünkü cron’un PATH’i yükleme klasörünü içermeyebilir. Bir crontab içinde % karakterini \% olarak kaçışlayın:
0 3 * * * exporter sync
0 3 * * * exporter export --dest ~/Backups/notes-$(date +\%F)
Carbon Copy Cloner ve diğer yedekleme araçları için exporter sync komutunu bir ön hazırlık betiği olarak çalıştırın ve çıkış koduna göre dallanın. Komut, oturum açmış kimse yokken macOS onu askıya aldığında bile tüm dışa aktarım boyunca bağlı kalır. Uygulama çalışırken, penceresi açık da olsa kapalı da olsa, sync hiçbir şey yapmaz: gerçek zamanlı eşitleme klasörü zaten güncel tutar.
MCP sunucusu
Claude, Cursor, VS Code ve diğer istemcilerin dışa aktarımlarınızda arama yapıp onları okumasını sağlayan yerel MCP sunucusunu komut satırı değil uygulama çalıştırır, http://localhost:8744/mcp adresinde. Başlatılmasından altı aracına kadar onunla ilgili her şey MCP sunucusu sayfasında.
Sorun giderme
Önce exporter doctor çalıştırın; başarısız olan her denetim kendi çözümünü yazdırır. Yardım uygulamanın mesajlarını da kapsar.
X is not authorized: klasörü (ya da bir üst klasörünü) Komut Satırı kartında ekleyin, sonra yeniden çalıştırın.exporter list destsnelere izin verildiğini gösterirapple notes is not set up. open Exporter and connect Apple Notes + an export folder.(her uygulama için aynısı): onu Exporter’da bağlayınsync, Exporter’ın çalıştığını yazdırıyor: yapılacak bir şey yok, uygulama klasörü güncel tutuyor. Ayrı bir kopya içinexport --destkullanınno notes were written. run "exporter doctor" to check folders and permissions.: çalıştırma not seçti ama hiçbirini yazmadı;doctorklasörleri ve izinleri denetlerbookmark broken: klasör taşındı, silindi ya da birimi bağlı değil. Klasörü uygulamada yeniden seçin- yüklü komut eski biçimde ya da cron ve yedekleme araçları 19 çıkış kodunu görüyor: yükleme komutunu yeniden yapıştırın
- komutu yükledikten sonra uygulama taşındı: yükleme komutunu yeniden yapıştırın
- kilidi açıldı ama çalıştırma ücretsiz diyor: satın alma denetimi en fazla 5 saniye bekler, sonra ücretsiz kotayla devam eder. Yeniden çalıştırın
- doctor’ın açıklayamadığı bir sorun:
exporter report --send --email you@example.com