Thanks for the hint. I'll try to solve using hexadecimal codes.

On Mon, Mar 21, 2011 at 3:01 PM, Daniel Eggleston <[email protected]> wrote:
> It's a null character (hex code 00).  Vi is a great help here, if you put
> the cursor over a character and type 'ga', it gives you the hex code of the
> character.
>
> Sed should be able to replace this using '\x00' as the character (since it's
> a null character).  You may be better off using a utility not intended for
> text processing, however, since it's not really text.
>
> Presence of null bytes very nearly always represents a non-text (i.e.
> binary) file; which is why gedit couldn't recognize the character encoding.
> Notepad doesn't display unrecognized characters, and wordpad displays
> rectangles, as you noted. Vi displays the control sequence for the byte
> (this is entered by hitting Ctl-V Ctl-@).  In almost any command line
> utility, that will give you a null character, but some programs don't handle
> that nicely.
>
> 2011/3/21 Henrique Rennó <[email protected]>
>>
>> Yes, I know, I tried it, but I don't know why it doesn't work. I think
>> the character in the file is another one. I'm using Debian Alpha Linux
>> at work, sed 4.1.5. When I open the file with nedit it shows me the
>> character as <nul> and with vi as ^@, while gedit can't recognize the
>> character coding. Opening in notepad inside Windows it shows nothing
>> and with wordpad some rectangles are shown.
>>
>> As I mentioned, I tried passing inside the script the following: <TAB>
>> (a tab character typed from keyboard), ^I, ^@ and \t, but none of them
>> worked. I contacted the person responsible for the data I receive to
>> see if he can say what's the character written in the file, but I
>> don't know if he has access to source code. I'll keep trying some
>> other alternatives as ex and vi reading commands using redirection
>> from a file.
>>
>> On Mon, Mar 21, 2011 at 2:08 PM, Daniel Eggleston <[email protected]>
>> wrote:
>> > Ok, then do what I said.  Use "\t".
>> >
>> >
>> > 2011/3/21 Henrique Rennó <[email protected]>
>> >>
>> >> I'd like to execute sed inside a C Shell script.
>> >>
>> >> On Mon, Mar 21, 2011 at 11:54 AM, Daniel Eggleston <[email protected]>
>> >> wrote:
>> >> > \t usually works, depending on the sed implementation. (GNU sed
>> >> > allows
>> >> > \t)
>> >> >
>> >> > If you're typing this on the cmd line, you can type "^V[tab]" -
>> >> > Control-V,
>> >> > then hit tab. This will put a literal tab (instead of letting the
>> >> > shell
>> >> > interpret the tab).
>> >> >
>> >> > 2011/3/21 Henrique Rennó <[email protected]>
>> >> >>
>> >> >> Hello,
>> >> >>
>> >> >> I'd like to know how it's possible to solve the following problem:
>> >> >>
>> >> >> I have a file with the following pattern:
>> >> >>
>> >> >> this is some text<TAB><TAB><TAB>
>> >> >> and this is another text<TAB><TAB><TAB>
>> >> >>
>> >> >> I want to change that text into:
>> >> >>
>> >> >> this is some text<SPACE>some text<SPACE>some text<SPACE>some text
>> >> >> and this is another text<SPACE>some text<SPACE>some text<SPACE>some
>> >> >> text
>> >> >>
>> >> >> I want to substitute every <TAB> pattern by <SPACE>some text
>> >> >>
>> >> >> The problem is that I need it inside a C Shell script, that is:
>> >> >>
>> >> >> if(-e myfile.txt)then
>> >> >>      sed "s/<TAB>/<SPACE>some text/g" myfile.txt > myanotherfile.txt
>> >> >> endif
>> >> >>
>> >> >> I also tried using ex and vi, but with no success:
>> >> >>
>> >> >> ex:
>> >> >>
>> >> >> cat << EOF >! ex.cmd
>> >> >> %s/^I/ some text/g
>> >> >> .
>> >> >> wq
>> >> >> EOF
>> >> >> ex - myfile.txt < ex.cmd
>> >> >>
>> >> >> vi:
>> >> >>
>> >> >> cat myfile.txt << EOF > /dev/null
>> >> >> %s/\t/ some text/g ; also: %s/<TAB>/ some text/g, where <TAB> is a
>> >> >> typed tab character; %s/^@/ some text/g; %s/^I/ some text/g
>> >> >> wq
>> >> >> EOF
>> >> >>
>> >> >> Is there another pattern for TAB besides the ones I tried? The TAB
>> >> >> character isn't being changed in any way. If I open the file with vi
>> >> >> and try chaging it, it works great with no problem. When opening the
>> >> >> file, tabs are shown as ^@.
>> >> >>
>> >> >> Thanks
>> >> >>
>> >> >> --
>> >> >> Henrique
>> >> >>
>> >> >> --
>> >> >> You received this message because you are subscribed to the Linux
>> >> >> Users
>> >> >> Group.
>> >> >> To post a message, send email to [email protected]
>> >> >> To unsubscribe, send email to
>> >> >> [email protected]
>> >> >> For more options, visit our group at
>> >> >> http://groups.google.com/group/linuxusersgroup
>> >> >
>> >> >
>> >> > --
>> >> >
>> >> >            Daniel
>> >> >
>> >> > --
>> >> > You received this message because you are subscribed to the Linux
>> >> > Users
>> >> > Group.
>> >> > To post a message, send email to [email protected]
>> >> > To unsubscribe, send email to
>> >> > [email protected]
>> >> > For more options, visit our group at
>> >> > http://groups.google.com/group/linuxusersgroup
>> >>
>> >>
>> >>
>> >> --
>> >> Henrique
>> >>
>> >> --
>> >> You received this message because you are subscribed to the Linux Users
>> >> Group.
>> >> To post a message, send email to [email protected]
>> >> To unsubscribe, send email to
>> >> [email protected]
>> >> For more options, visit our group at
>> >> http://groups.google.com/group/linuxusersgroup
>> >
>> >
>> > --
>> >
>> >            Daniel
>> >
>> > --
>> > You received this message because you are subscribed to the Linux Users
>> > Group.
>> > To post a message, send email to [email protected]
>> > To unsubscribe, send email to
>> > [email protected]
>> > For more options, visit our group at
>> > http://groups.google.com/group/linuxusersgroup
>>
>>
>>
>> --
>> Henrique
>>
>> --
>> You received this message because you are subscribed to the Linux Users
>> Group.
>> To post a message, send email to [email protected]
>> To unsubscribe, send email to [email protected]
>> For more options, visit our group at
>> http://groups.google.com/group/linuxusersgroup
>
>
> --
>
>            Daniel
>
> --
> You received this message because you are subscribed to the Linux Users
> Group.
> To post a message, send email to [email protected]
> To unsubscribe, send email to [email protected]
> For more options, visit our group at
> http://groups.google.com/group/linuxusersgroup



-- 
Henrique

-- 
You received this message because you are subscribed to the Linux Users Group.
To post a message, send email to [email protected]
To unsubscribe, send email to [email protected]
For more options, visit our group at 
http://groups.google.com/group/linuxusersgroup

Reply via email to