From owner-freebsd-questions@FreeBSD.ORG Tue May 24 04:44:46 2011 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E77761065675 for ; Tue, 24 May 2011 04:44:46 +0000 (UTC) (envelope-from f.bonnet@esiee.fr) Received: from hp9.esiee.fr (hp9.esiee.fr [147.215.1.4]) by mx1.freebsd.org (Postfix) with ESMTP id 9BCD48FC12 for ; Tue, 24 May 2011 04:44:46 +0000 (UTC) Received: from mail.esiee.fr (mail.esiee.fr [147.215.1.3]) by hp9.esiee.fr (Postfix) with ESMTP id 6364914E948D; Tue, 24 May 2011 06:44:21 +0200 (CEST) X-DKIM: OpenDKIM Filter v2.3.2 hp9.esiee.fr 6364914E948D DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=esiee.fr; s=MAILOUT; t=1306212261; bh=FIPsCvQr29VMEny5USH8oyBfvYTmXYDbnR4kQDQeBrI=; h=Message-ID:Date:From:MIME-Version:To:CC:Subject:References: In-Reply-To:Content-Type:Content-Transfer-Encoding; b=UzAS6XXnY7xJTdE+LeiZMfv8TGPRSi/5JKa5/5rZEKaCR9AC8xmgmP4IgRcbrDo+9 jQv1p3o36vGymOKrA1Es5vXsBDViA26dfWXt5CI1+A4ROD0ZowLeJzUJXKpDzWIYQc 6fiDw5ttHoEKklQzmTKchuNOGa0O+vYQ8NnV9KvI= Received: from mail (localhost [127.0.0.1]) by VAMS.dummy (Postfix) with SMTP id 4022B105441A; Tue, 24 May 2011 06:44:45 +0200 (CEST) Received: from secure.esiee.fr (secure.esiee.fr [147.215.1.19]) by mail.esiee.fr (Postfix) with ESMTP id 228071054418; Tue, 24 May 2011 06:44:45 +0200 (CEST) Received: from [127.0.0.1] (chs77-1-82-238-8-126.fbx.proxad.net [82.238.8.126]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: bonnetf) by secure.esiee.fr (Postfix) with ESMTPSA id 5F011EAB62; Tue, 24 May 2011 06:44:49 +0200 (CEST) Message-ID: <4DDB37BE.7080301@esiee.fr> Date: Tue, 24 May 2011 06:44:46 +0200 From: Frank Bonnet User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; fr; rv:1.9.2.17) Gecko/20110414 Thunderbird/3.1.10 MIME-Version: 1.0 To: Modulok References: <990E8670-2137-4F80-8D9D-BCEB05C6ECAA@esiee.fr> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Cc: freebsd-questions@freebsd.org Subject: Re: Filename containing French characters ? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2011 04:44:47 -0000 Thanks that is working :-) Now I have to test the application ( apache based application ) to see if it is able to open the file. I'll tell in few hours when arrived to my office Le 23/05/2011 17:50, Modulok a =E9crit : > Short answer, use a glob pattern. Assume I have a file named '=E0 fichi= er.txt': > > ls -l > -rw-r--r-- 1 Modulok Modulok 12 May 23 09:01 ?? fichier.tx= t > > mv ?\ fichier.txt aFile.txt > > Long answer, for those who want to follow along and fix their terminal = to > display UTF-8, keep reading... > > Step 1: Make a funky file to play along with this min-tutorial: > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > Create a text file with an editor that supports non-ASCII characters. I > created a file named 'filename' which containing this (no newline!): > > =E0 fichier.txt > > Step 2: Create the actual file with content > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > I used echo and cat like so in the tcsh shell: > > echo "hello world"> "`cat filename`" > > > Step 3: Show the file in ls > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > > As you can see below, the first character of the filename is displayed = as two > question marks. This is the terminal's way of showing filenames that it= cannot > display correctly. There are two question marks, because this is a two-= byte > character. This does *not* mean the filename starts with a literal ques= tion > mark: > > > -rw-r--r-- 1 Modulok Modulok 12 May 23 09:01 ?? fichier.tx= t > > Step 4: (optional) Fix the terminal > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > At this point, let's just fix the terminal so that UTF-8 characters are > displayed correctly. We want to see the French accented '=E0', and not = a bunch of > question marks. To do this, you edit '/etc/login.conf' as root. Add two= lines > at the bottom of the 'default' section. My default section now looks li= ke this: > > > default:\ > :passwd_format=3Dmd5:\ > :copyright=3D/etc/COPYRIGHT:\ > > ...and so on... > > :charset=3Den_US.UTF-8:\ > :lang=3Den_US.UTF-8: > > If you're a French operation yours should probably look like this inste= ad: > > default:\ > :passwd_format=3Dmd5:\ > :copyright=3D/etc/COPYRIGHT:\ > > ...and so on... > > :charset=3Dfr_FR.UTF-8:\ > :lang=3Dfr_FR.UTF-8: > > I'm not certain on these for all countries, but the above examples work= . We > then need to rebuild the actual login database. Execute the following c= ommand > as root: > > cap_mkdb /etc/login.conf > > This generates /etc/login.conf.db from /etc/login.conf. Now log out and= then > back in! > > > Step 5: Back to the funky file > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > > You should now see the actual accent characters correctly in the termin= al. > (Assuming your terminal supports this): > > -rw-r--r-- 1 Modulok Modulok 12 May 23 09:01 =E0 fichier.t= xt > > In some ternimals, we cannot type these characters. So you can access t= he > filename through a shell glob pattern. In most shells, the glob pattern= '?' > matches any single character. The forward slash escapes the space in th= e > filename. > > mv ?\ fichier.txt aFile.txt > > > Hope this helps (and doesn't get too mangled.) > -Modulok-