nesmazatelne soubory s diakritikou
Miroslav Lachman
000.fbsd at quip.cz
Fri Sep 30 14:01:55 CEST 2011
Primountovano nasledujicim zpusobem:
mount -t smbfs -o -N,-EISO8859-2:UTF-8,-Lcs_CZ.ISO8859-2
setenv LANG jsem zkusil cs_CZ.ISO8859-2 i cs_CZ.UTF-8, v obou pripadech
stejne chovani
Jindra Fucik wrote:
> Celkove si myslim, ze by bylo dobre nejak vyloucit shell z te operace.
> Napriklad sleduj rozdil mezi:
> rm -f nab*pdf
> rm -f "nab*pdf"
Vyzkouseno v tcsh i sh, rm volano jako rm i jako /bin/rm
# ls -l
-rwxr-xr-x 1 root wheel 75721 1 lis 2010 novl n vrh.pdf
-rwxr-xr-x 1 root wheel 436445 3 led 2011 p}ed vac! protokoly REAL
3.pdf
-rwxr-xr-x 1 root wheel 231111 28 čvc 16:37 vltah.pdf
Pokus v tcsh
# rm -i nov*
remove novl n vrh.pdf? y
rm: novl n vrh.pdf: No such file or directory
# rm -i nov\*
remove nov*? y
rm: nov*: No such file or directory
# rm -i "nov*"
remove nov*? y
rm: nov*: No such file or directory
# /bin/rm -i nov*
remove novl n vrh.pdf? y
rm: novl n vrh.pdf: No such file or directory
# /bin/rm -i "nov*"
remove nov*? y
rm: nov*: No such file or directory
Pokus v sh
# rm -i nov*
remove novl n vrh.pdf? y
rm: novl n vrh.pdf: No such file or directory
# /bin/rm -i nov*
remove novl n vrh.pdf? y
rm: novl n vrh.pdf: No such file or directory
# rm -i "nov*"
remove nov*? y
rm: nov*: No such file or directory
(dale se to opakuje uplne stejne jako v tcsh, takze to sem ani nepisu,
at mail neni zbytecne dlouhy...)
>> A co treba find . -delete pustit v te slozce? Pak je mozne pouzit
>> utility jako detox, ktera to prejmenuje a pak to smazat.
find v nekolika variantach jsem zkousel hned na zacatku, bylo to i v tom
prvnim e-mailu - dopadne to stejne "No such file or directory" a je
jedno, jestli pouziju -delete, nebo -exec rm "{}", -exec rm '{}', xargs
Stejnym zpusobem selze i detox - sice vypise pri dry-run soubory, ktere
by chtel prejmenovat, ale kdyz ho pustim naostro, tak na tech souborech
konci se stejnou hlaskou "No such file or directory".
Cele jsem to jeste vyzkousel s nasledujicimi mount options a vysledek
byl stejny - No such file or directory
mount -t smbfs -o -EISO8859-2:CP852,-Lcs_CZ.ISO8859-2
mount -t smbfs -o -EISO8859-2:CP850,-Lcs_CZ.ISO8859-2
mount -t smbfs -o -EISO8859-2:CP1251,-Lcs_CZ.ISO8859-2
mount -t smbfs -o -EISO8859-2:ISO8859-1,-Lcs_CZ.ISO8859-2
(zkousim uz cokoliv, co me napadne)
Chtel jsem se dopatrat funkcniho pustupu na FreeBSD, ale uz mi to zere
vazne moc casu, tak se na to asi vykaslu. Z Windows ty soubory smazat
jdou, tak je smazu z windows, kdyz se mi nikde nepodarilo vygooglit
utilitu, ktera by dokazala smazat soubor podle jeho inode.
(na netu jsou HowTo, jak se ma pouzit find ./ -inum 123456 -exec rm {},
ale to nic neresi, to totiz zase preda tomu rm spatny nazev souboru)
Kazdopadne by me zajimalo, jestli nekomu na FreeBSD 8.2-RELEASE, ci
pozdejsi 8-STABLE funguje skutecne ta konverze charsetu u mount_smbfs,
protoze podle me na tomhle stroji nedela vubec nic!
Vytvoril jsem si z Windows na tom WD Datastore soubor s diakritikou v
nazvu (vsechny znaky cestiny), ve Windows je vidim OK, pres NFS je vidim
OK, pokud si vypis iconvem konvertuju z UTF-8 do ISO8859-2, ale at
pouziju jakoukoliv variantu konverzni tabulky -E u mount_smbfs, tak je
vidim spatne a porad stejne spatne. Pritom by se podle pouzite prevodni
tabulky melo menit to, jak je vidim spatne (pokazde by se ty znaky mely
prelozit na neco trochu jineho), ale to se nedeje!
Zaroven pres smbclient ty znaky vidim naprosto v poradku bez jakekoliv
dalsi manualni konverze.
Takze je tu nekdo, kdo pouzivate FreeBSD 8.2 amd64 a mountujete nejaky
smbfs share pomoci mount_smbfs a funguje vam konverze diakritiky?
S jakym nastavenim?
Opet predem diky za tipy
Mirek
More information about the Users-l
mailing list