Sonunda bir ihracat boru hattı buldum, ama bu bir acıydı. İşte bunu yapmaktan notlar:
Her dışa aktarmadan sonra OneNote'un uzun bir OneDrive senkronizasyonu yapmasını önlemek için ağlarınızı kapatın.
Not Defterleri listesinde, tüm sekmeleri görmek için not defterini genişletin.
Bir sekmeyi sağ tıklayın ve "Dışa aktar ..." ı tıklayın.
Dosya türü açılır menüsünü tıklayın ve biçimi Mseçmek için tuşuna basın .docx
. Seçmek Enteriçin tuşuna basın .
EnterDışa aktarılan dosyayı kaydetmek için tekrar basın .
Dizüstü bilgisayardaki her sekme için 2-5. Adımları tekrarlayın.
Pandoc kurun ve bir PowerShell veya cmd penceresi açın.
dışa aktarılan .docx
dosyaların bulunduğu dizine cd .
Dışa aktarılan her .docx
dosya için, işaretlemeye dönüştürmek üzere aşağıdaki pandoc komutunu kullanın ( journal
dosyanızın adıyla değiştirin ):
pandoc --extract-media='' --wrap=preserve '.\journal.docx' -o journal.md
Komutun bir açıklaması: --extract-media=''
pandoc'a .docx
dosyadan görüntüleri almasını ve bunları varsayılan alt klasöre (varsayılan olarak 'media' olarak adlandırılır) koymasını söyler. --wrap=preserve
pandoc'a çıktı dosyasını satır aralıklarıyla (bu varsayılan değerdir) sağlam bir şekilde sarmamasını söyler. Bir sonraki alan girdi dosya -o
adıdır ve 'çıktı' anlamına gelir journal.md
, çıktı dosya adı da öyle.
Bu dosyayı bölmek istemiyorsanız (örneğin, sekmenizde yalnızca bir sayfa varsa), 15. adıma atlayın.
(Bunlardan bir demet yaparken ↑, kabuktaki önceki komutu geri çağırmak için (yukarı ok) tuşuna basıp dosya adını düzenleyebilirsiniz.)
Sayfaları sekmede depolamak için yeni bir klasör oluşturun. Bu örnek için, şu anda OneNote'ta Dergi sekmemizdeki tüm sayfalar içinde eziliyor journal.md
. journal
Ayrılmış son sayfaları ayrı ayrı .md dosyaları olarak depolayacak bir klasör oluşturun.
.docx
Dosyada herhangi bir görüntü varsa , bunlar adlı yeni bir klasöre aktarılır media
. Medya klasörünü (varsa) şimdi oluşturduğunuz klasöre sürükleyin. (Bu yüzden her pandoc işlemini ayrı ayrı yapmamız gerekiyor, çünkü her dışa aktarma ayrı bir medya klasörü oluşturacak ve bunları ayrı tutmak istiyoruz, böylece markdown dosyalarındaki bağlantılar doğru çalışıyor. Tüm bunları yapmak için akıllı bir komut dosyası yazabiliriz. otomatik olarak, ancak çok sayıda not defteriniz yoksa manuel olarak yapmanız daha az zaman alacaktır.) (Not: İstediğiniz klasör adını --extract-media=''
bağımsız değişkenin tek tırnaklarına koyarak resim kaydedebilirsiniz - resimli .docx
dosyalar için , sizin için otomatik olarak bir klasör oluşturulur.)
.md
Dosyayı içeren dizine bir bash terminali ve cd açın . 10. adımda oluşturduğunuz klasör, bunun bir alt klasörü olmalıdır (aşağıdaki komutta yolu düzeltmediyseniz).
Henüz yapmadıysanız, Windows Bash pencere simgesine tıklayın, Özellikler'e tıklayın, Hızlı Düzenleme Modunu kontrol edin ve ardından Tamam'a tıklayın. Şimdi Windows Bash pencere simgesine tekrar tıklayın, bu kez Varsayılanlar'a tıklayın, QuickEdit Modunu kontrol edin ve ardından Tamam'a tıklayın (böylece gelecekte oluşturacağınız yeni Bash pencereleri bu ayarı hatırlayacaktır). Artık terminalde metin seçebilir ve kopyalamak için Ctrl+ tuşuna basabilir Cveya metni panoya yapıştırmak için terminal penceresine sağ tıklayabilirsiniz. Şimdi komutumuzu ayrı bir yerde hazırlayabilir ve her sürümü hızlı bir şekilde Bash'e yapıştırabiliriz.
Aşağıdaki komutu özelleştirin ve .md
ayrı sayfalara bölmek istediğiniz her dosya için çalıştırın :
csplit ./journal.md --keep-files --prefix='journal/journalentry '
--suffix-format='%i.md' --elide-empty-files '/^\(Monday\|Tuesday\|Wednesday\|Thursday\|Friday\|Saturday\|Sunday\),/-2' '{*}'
(Tek satır olarak yazın.)
Gördüğünüz gibi journal.md
, işaretleme dosyamızın adı (şu anki dizinde, ile belirtilir ./
), ikinci journal
(sonra --prefix='
) oluşumu , bölünmüş dosyaları içerecek olan alt klasörümüzün adıdır ve journalentry
her dosyanın adı verilir (ardından bir dizin numarası gelir).
Komutu anlamak istiyorsanız, işte bir açıklama: --keep-files
hatalar veya dosyanın sonu ile karşılaşıldığında dosyaları hala yazdırır, son sayfanın doğru şekilde çıkmasını sağlar (normal ifademizin deseninde sona ermediğinden). --prefix
çıktı dosyalarının adlandırma düzenini ayarlar. --suffix-format
dosya uzantımızı ayarlamamıza izin verir ( .md
bu durumda), ancak %i
dosyanın dizin numarasını veren sprintf deyimini eklememiz gerekir . --elide-empty-files
umursamadığımız boş dosyaların çıktısını atlar. Son olarak, ile başlayan '/
ve biten düzenli ifade/-2'
, dosyanın ne zaman bölüneceğini tanımlar: satırın başında (/) (^) öğesini bulduğunuzda (() Pazartesi veya (\ |) Salı veya Çarşamba veya Perşembe veya Cuma veya Cumartesi veya Pazar () ) ve ardından virgül ekleyin, iki satır geri çekilin (-2) "ve dosyayı oraya bölün ve şimdiye kadar elimizde olan çıktıyı alın. Son bit, '{*}'
dosyanın sonuna ulaşılana kadar önceki komutu süresiz olarak tekrarlar.
.docx
Ve .md
dosyalarını bir klasöre sürükleyin, şimdi oluşturduğunuz bir klasörü söyleyin intermediates
. Veya sadece silebilirsiniz. Geri dönüp dönüştürme işlemi sırasında meydana gelen bir şeye başvurmak istemeniz durumunda, yeni dosya biçiminizle rahat oluncaya kadar bunları bir süre kaydetmek güzeldir. Şimdi onları ara klasöre taşımak, nerede olduğumuzu unutma ve adımları tekrarlama şansına sahip olacak.
.docx
OneNote'tan dışa aktardığınız her dosya için 9-14 arasındaki adımları tekrarlayın .
Artık her sekme için bir klasör var, içinde ayrı ayrı .md
dosyalar var, her sayfa için bir klasör var ! Ayrıca media
, her alt klasörde OneNote sekmesinde görüntüleri olan bir klasör.
OneNote not defterlerinizin her birini bir .mht
dosya (Tek Dosya Web Sayfası) olarak dışa aktarmanızı veya isterseniz a .pdf
. Bu şekilde, işaretleme dosyalarınızın bazılarında biçimlendirme veya diğer bilgiler kaybolmuşsa, çoklu dönüşüm nedeniyle, her zaman geri dönebilir ve .mht
dosyaya nasıl bakması gerektiğini kolayca görebilirsiniz . Buna ek olarak, OneNote not defterlerinizin her birini bir .onepkg
dosya (OneNote Paketi) olarak dışa aktarmanızı öneririm , bu nedenle Not Defteri'ni OneNote'ta kendi özgün / orijinal dosya biçiminde yeniden açmak isterseniz güzel bir son dışa aktarma kopyanız olur (bu yararlı olabilir) örneğin, .mht
dosyada kurtarmak istediğiniz bazı orijinal biçimlendirme de eksikse).
Her bir not defterini tamamladığınızda, OneNote'ta not defterini sağ tıklayın ve "Not Defterini Kapat" ı tıklayın, böylece not defterini yanlışlıkla düzenlemeyip yeni değişikliklerinizi yeniden dışa aktarmanız gerekmez. İşaretleme klasörleri için, her not defteri için bir klasör oluşturdum ve tüm sekme klasörlerini içine koydum.
Tüm dışa aktarma projesini bitirdiğinizde, OneDrive'ınıza gidip orada senkronize edilen tüm OneNote dizüstü bilgisayar orijinallerinizi silebilirsiniz (elbette kendi dosyalarınızı yedeklediğinizden emin olun! Linux için OneDrive var veya Eşitleme gibi bir şey deneyebilir).
Son olarak, tüm .md dosyalarımızı iki komut dosyası kullanarak her dosyadaki ilk satır olan OneNote sayfa başlıklarıyla yeniden adlandırabiliriz. Aşağıdaki dosyaları yapın:
Dosya 1: ~/scripts/rename-files-to-first-line.sh
for i in *md ; do mv -n "$i" "$(cat "$i"|head -n1|tr -d '\000-\037[]{}()/\?*')".md; done
Dosya 2: ~/scripts/recurse.sh
CDIR=$(pwd)
for i in $(ls -R | grep :); do
DIR=${i%:} # Strip ':'
cd $DIR
$1 # Your command
cd $CDIR
done
Ardından notlar klasörünüze gidin recurse.sh
ve rename-files-to-first-line.sh
komutu bağımsız değişken olarak kullanarak komutu çalıştırın :
$ ~/scripts/recurse.sh ~/scripts/rename-files-to-first-line.sh
Komut dosyasının tüm dosyalarınızı tekrar tekrar yürüttüğünü göreceksiniz, garip ilk satırlara sahip dosyalara (dosya adına dönüştürülmeyecek) ve diğer uç durumlarda bazı hatalar atıyorsunuz. Ancak, mv
komut, herhangi bir dosyanın üzerine yazmasını engelleyen rename-files-to-first-line
argüman ile yürütülür -n
. Yeniden adlandırılmayan birkaç not olabilir, çünkü içlerindeki ilk satır boş veya garip bir şeydir, ancak bu birkaç dosyayı manuel olarak düzeltebilirsiniz.
OneNote'tan temiz kaçışınızı yaşayın.