Sponsored Content
Top Forums Shell Programming and Scripting updating a file with sed -help Post 302567886 by vgersh99 on Tuesday 25th of October 2011 11:21:52 AM
Old 10-25-2011
what is 'blank'? [ ]
what is 'non-blank'? [^ ]
Code:
sed -i -e '2s/[^ ]/5/2' FILENAME

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

TO know whether file is updating or not

Hi All, I am new to scripting. my requirement is , I want to know whether the file(i.e., log file) is updating or not. It should search for every 15 min. If it is not updating means it needs to send out a automatic mail. can you please help me in this. (2 Replies)
Discussion started by: raj333
2 Replies

2. Shell Programming and Scripting

sed used for updating firewall allow ftp from DHCP access

Here is my situation. You can make all kinds of comments about how I am doing it and why from the networking standpoint, but I am really only looking for comments on how to make it work. Of course, any other ideas for how to do this would be welcome. I have an iptables firewall that allows only... (1 Reply)
Discussion started by: manouche
1 Replies

3. Shell Programming and Scripting

Sed Help in Updating something only in one particular file.

Hi, The scenerio is that I want to replace a text in one particular line of a file. But when I am using the sed it's replacing all the occurences of that text. Like the file is: >cat test DNGGF10 :None :Test DNGGF11 :ABC :Test1 DNGGF12 :None :Test2 DNGGF13 :None :... (4 Replies)
Discussion started by: bisla.yogender
4 Replies

4. Shell Programming and Scripting

awk updating one file with another, comparing, updating

Hello, I read and search through this wonderful forum and tried different approaches but it seems I lack some knowledge and neurones ^^ Here is what I'm trying to achieve : file1: test filea 3495; test fileb 4578; test filec 7689; test filey 9978; test filez 12300; file2: test filea... (11 Replies)
Discussion started by: mecano
11 Replies

5. Shell Programming and Scripting

Updating a line in a large csv file, with sed/awk?

I have an extremely large csv file that I need to search the second field, and upon matches update the last field... I can pull the line with awk.. but apparently you cant use awk to directly update the file? So im curious if I can use sed to do this... The good news is the field I want to... (5 Replies)
Discussion started by: trey85stang
5 Replies

6. Shell Programming and Scripting

Reading from one file and updating other file with constant entries

Hi All, Thaks for the help in my last thread. I have one more question. I have two files with ldap entries in it. One file contains all the user LDAP parameter entries (26 MB) and other file contains only the user id's that have to be inactivated. Unix script has to read from the file that has... (8 Replies)
Discussion started by: Samingla
8 Replies

7. Shell Programming and Scripting

Help updating a file

I can not seem to figure out how to update the attached match.txt column 2 using update.txt. However, only the text before the period in updat.txt appears in match.txt. For example, in update.txt NM_001613.2 matches NM_001613 in match.txt, so is it possible to update the record in match.txt to... (8 Replies)
Discussion started by: cmccabe
8 Replies

8. UNIX for Dummies Questions & Answers

Updating a File

Hi, I have a below requirement and need your help in this regard. I have two timestamps in a file i.e. TimeBefore=2014-07-10.18.06.55 TimeAfter_1=2014-07-09.05.45.12 TimeAfter_2=2014-07-09.05.40.12 When I first run the script file, it sets the 'TimeBefore' to todays date. When I run... (5 Replies)
Discussion started by: vrupatel
5 Replies

9. Shell Programming and Scripting

Updating variables using sed or awk

Hi, I have a file(testfile.txt) that contains list of variables as shown below. T $$FirstName=James $$LastName=Fox $$Dateofbirth=1980-02-04 ……and so on there are 50 different variables. I am writing a script(script1.sh) that will update the above three variable one by one with the values... (6 Replies)
Discussion started by: Saanvi1
6 Replies

10. UNIX for Beginners Questions & Answers

Updating in file

hi, i have an csv(which is a month's log file containing userid and log in date ) file which has to be appended to another file say master.log.I need to compare the next month's log data to master.log file .In case, there is new log date for userid it has to get updated in master.log file or i... (2 Replies)
Discussion started by: preema
2 Replies
Jcode::Nihongo(3pm)					User Contributed Perl Documentation				       Jcode::Nihongo(3pm)

I3/4Ao
       Jcode - AEuEU,iE,>>u1/2,1cYIYoYEYe

3uIx
	use Jcode;
	#		 _
	# ,A1/4oxaex<<x.x
	Jcode::_onvert($str_ $ocode, $icode, "z");
	# xax.x xIYaYOY,YSY YE>>O,bxCia
	print Jcode->new($str)->h2z->tr($from, $to)->utf8;

AaIA			  _
       Jcode.pmxIYaYOY,YSY YEAaxEYcYxYi_1/4YAxE1/23/4Iex<<xexIYcYxYii1/4YAxII3/4Eyxo
       YuYYi1/4YEx.xAExxxbx1iLYaYOY,YSY YEAaxEYcYxYii1/4YAxo>>Ex"xDx3xoxE'9|x,xCi"

	 $iso_2022_jp = Jcode->new($str)->h2z->jis;

       x3xAxexexeY"YiY~YoYExCx.xcx|iS

	 $iso_2022_jp = $str;
	 &jcode::convert($iso_2022_jp, 'jis', &jcode::getcode($str), "z");
		_
       YaYOY,YSY YExEAEeA-:-xBxIIuxxcIxIxcxaxEicJcode.pmxIxbxA"getcode()"xE "convert()"xoYuYYi1/4YEx.xAExxxbx1iL

       PerlxIYDi1/4Y,YcYox~5.8.1oE3/4axExeicJcodexIicPerl 5.8oE1BxIE,1/2aAaxEE,>>u1/2,1c
       YIYoYEYeYaY,Yai1/4YexCxcxeEncodexIYeYAYNi1/4xEx.xAEc9|xeEnxxxbx1iL

YaY1/2YAYE							       _
       AEAxE,AuUx.xExx,Axeicx3x3xCuox2xeYaY1/2YAYExIA'xAEJcodeYaYOY,YSY YExoEOx.xbx1iL
		  _
       Y3YoY1YEYeY Yc

       $j = Jcode->new($str [, $_code])
	 $strx<<xeJcodeYaYOY,YSY YE$jxoA,A(R)x.xbx1iLIA1/4"AaxE$icodexoY>>YAYEx.xEx+-xixDic			     _
	 AEbIIY3i1/4YExI1/4<<AEoAaxEE1/2Aexuxixbx1iLIoIN2AC1/2xEE,>>u1/2,1cxExAxxxAExIic21/4xI getcodexo>>23/4Ex.xAEx xAxuxxiL

	 Perl 5.8.1oE1BxCxIic$icodexExIEncodex~Iy2oxCxxe xExoxEY"YoY3i1/4YCYLYoYoI3/4xa>>Ex"xbx1iL

	   $j = Jcode->new($european, 'iso-latin1');
		  _
	 YaYOY,YSY YExoE,>>uIo21/2x1xexEicEUCxEEN'1xuxixcE,>>uIox~EOxexbx1iLxCx1x<<xe "print $j->euc"xEx1xeAaxixexEic"print $j"xExCxxbx1iL

	 YeYOYiYiYoY1AIx.
	   Y1Y<<Yei1/4AIxIAaxixexEicoE21/4xIxex|xEYeYOYiYiYoY1xoAIx>>xbx1iL

	    Jcode->new($str);
			  _
	   x3xixIxUxoxI3/4 x.>>b'OxoAaIox.xbx1iLx1/2xIA_1/2bxEx.xAEic$strxIAIx1/2xIxaxIx~
	   EN'1xuxixbx1iExcxeoOILic$strxIjcodeYaYOY,YSY YExE"tiexuxixe"xIxCx1iEiL

       $j->set($str [, $icode]) 				       _
	 $jxIAEaEoE,>>uIoxE$_trxoY>>YAYEx.xbx1iL.<<xeEOx.JcodeYaYOY,YSY YExo>>Ex|xExxE
	 EOIoxCx1iEYaYOY,YSY YExoA,A(R)x1xe>>b'OxEYaYaYexIAaIoxExExexbx1iEiL

	  # mailboxxoSJIS.A1/4oxEEN'1
	  my $jconv = new Jcode;
	  $/ = 00;
	  while(<>){
	      print $jconv->set($_)->mime_decode->sjis;
	  }

       $j->append($str [, $icode]);
	 $jxIAEaEoE,>>uIoxE$strxo2Ax"xbx1iL

       $j = jcode($str [, $icode]);
	 Jcode->new() xIA>>1/2I.AiLoE21/4xIxex|xExCxxbx1i"

	  $sjis = jcode($str)->sjis;

       E,>>uIoxIY"YoY3i1/4YE

       oiEIxEic$j->encodedxEx1xex3xExCencodedxEEN'1xuxixcE,>>uIoxoAEAxbx1iL

       $sjis = $j->sjis
       $euc = $j->euc
       $jis = $j->jis
       $sjis = $j->sjis
       $ucs2 = $j->ucs2
       $utf8 = $j->utf8
	 1/4<<IAxCx.xcx|iL WYCIWYG = What you code is what you get :)

       $iso_2022_jp = $j->iso_2022_jp		     _
	 "$j->h2z->jis"xEAE+-x,xCx1iL E3/43NY<<YExI9| A(C)AaxEA'3NxEEN'1xuxixbx1iL

	 Perl 5.8.1oE1BxCxIicEncodex~YuYYi1/4YEx1xexExoxEY"YoY3i1/4YCYLYoYoI3/4xE Y"YxYeYcY1xCxaIoINxCxxbx1iLIax"xDiS

	   $european = $j->iso_latin1; # YaY1/2YAYEI3/4INxE'-'xI'_'xEAOx'1x"xbx1

	 >>21IiSEncode::Encoderx~x3xixEAE+-x,3/4(R)u>>xo>>ExAxAExxxbx1iL

	 $j->fallback($fallback)
	   Perl 5.8.1oE1BxCxIicJcodexIAEaEoxIE,>>uIoxoUTF-8xCEY>>yx.xbx1iL ->encodingxEYbYAYxxCxxExxE,>>uxI'?'xEAOx'1x"xexixbx1x~ic
	   x3xixIEncodexCxIE,1/2aAEooixCx1iL
						    _
	     my $unistr = "x{262f}"; # +-cIUYbi1/4Y
	     my $j = jcode($unistr);  # $j->euc xI.e2IxI '?' xE
							   _
	   x3xIc9|xeEnxxxIicEncodeAE+-IIicYOY(C)i1/4YeYDYAY xo>>OAex1xex3xExCEN11xCxxbx1iL
	   AIxIEncodexIxaxIxEoi1/2ixCx1iLEOu1xIxcxaic"Jcode::FB_PERLQQ"ic "Jcode::FB_XMLCREF"ic"Jcode::FB_HTMLCREF"x~EncodexIx1/2xixexOxI
	   Y"YxYeYcY1xExExAxAExxxbx1iL

	     print $j->fallback(Jcode::FB_PERLQQ)->euc;   # 'x{262f}'
	     print $j->fallback(Jcode::FB_XMLCREF)->euc;  # '&#x262f;'
	     print $j->fallback(Jcode::FB_HTMLCREF)->euc; # '&#9775;'
									    _
	   YoYii1/4YDYeENco$Jcode::FALLBACKxEYCYOY(C)YeYExIYOY(C)i1/4YeYDYAY x~EY>>y
	   xuxixAExxxbx1xIxCicx3xIAIxoAaAEbx1xex3xExCYai1/4YDi1/4YeYxYExCxxbx1iL
										   _
	     $Jcode::FALLBACK = Jcode::FB_PERLQQ; # YCYOY(C)YeYExIYOY(C)i1/4YeYDYAY Y1Yi1/4YbxoABAe

       [@lines =] $jcode->jfold([$width, $newline_str, $kref])
	 $widthiEYCYOY(C)YeYEiS72iEEexEjcodeE,>>uIoAEaxI1OxoAbxeEOx.xbx1iL
	 $widthxIiEE3/43NiEE,>>uxIcoxCx1iLA'3NE,>>uxI2E,>>uxEx.xAEY<<Y|YoYEx.xbx1iL

	 $newline_striEYCYOY(C)YeYExI"
"iExC>>OAexuxixc2b1OE,>>ux~2Axixexbx1iL AbxeEOxuxixcA'1OxoYeY1YExCEOx.xbx1iL

	 Perl 5.8.1oE1BxI3EOIUxIouco$krefxEEUCxIE,>>uIoxICUIoYeYOYiYiYoY1xo AIx1x3xExCic'EoxAaxE1OAE~9|OAS1/2eIyiExOxe21/4x~xeiExo1Ox"xbx1iL

       $length = $jcode-_jlength();
	 YDYxYEA1xCxIxEx icA'3NE,>>uxaoiE,>>uxEx.xAEcox"xc3/4i1cxIE,>>ucoxoEOx.xbx1iL

       MIME::Base64xo>>Ex|YaY1/2YAYE

       21/4uxIYaY1/2YAYExo>>Ex|xExIicMIME::Base64x~E~IxxCx1iLYxYoY1YEi1/4YexIA+-1/2axE

	  perl -MCPAN -e 'CPAN::Shell->install("MIME::Base64")'

       xEx.xbx1iLxa>>ExxxIPerlx~5.6oE1BxCxcxexExeicMIME::Base64xI YDYoYEYexuxixAExxxexIxCicYxYoY1YEi1/4YexIE~IxxIxcxexbx>>xoiL

       $mime_header = $j->mime_encode([$lf, $bpl])
	 $strxoRFC1522xExcxeMIME-HeaderxEEN'1x.xbx1iL$lfxo>>OAex1xexEic 1OxIAbxeEOx.xE$lfx~>>Exixixbx1iEYCYOY(C)YeYEiS
iEiL
	 $bplxo>>OAex1xexEicAbxeEOx1YDYxYEcoxE$bplx~>>Exixixbx1iEYCYOY(C)YeYEiS76i" x3xIcoAIxI76oE21/4xCxEx+-xixDxExexbx>>xoiEiL

	 Perl 5.8.1oE1BxCxIicoE21/4xIxex|xEx.xAExaMIME HeaderY"YoY3i1/4YEx~xCxxbx1iS

	   $mime_header = $j->MIME_Header;

	 x3xI3/4i1c$mime_headerxIIaxeAIxIMIME-B-encoded UTF-8xExExexbx1iL oiEyic"$j->mime_encode()"xIMIME-B-encoded ISO-2022-JPxoEOx.xbx1iL
	 oC9|axIxUxExoxExIYai1/4Yei1/4xIxExAxexaYuYYi1/4YEx.xAExxxbx1iL

       $j->mime_decode;_
	 JcodeYaYOY,YSY YExIAEaEoE,>>uIoxoMIME-HeaderYCY3i1/4YEx.xbx1iLPerl 5.8.1 oE1BxExeicoE21/4xIxex|xEx.xAEAE+-x,x3xEx~xCxxbx1iS

	   Jcode->new($str, 'MIME-Header');
						_
	 x3xAxexI3/4i1cicISO-2022-JPxAx+-xCxIxEx UTF-8xExExExaAD+-bx.xAExaxeic xuxexEMIME B EncodingxIxBxExexoMIME Q EncodingxExaAD+-bx.xAExxxe
	 xIxCicPerl 5.8.1oE1BxCxcxixDx3xAxexo>>Ex|xUxxCx.xcx|iL

       E3/43N c<<ca A'3N

       $j->h2z([$keep_dakuten])
	 X201Y<<YEiEE3/43NiExoX208Y<<YEiEA'3NiExEEN'1x.xbx1iL $keep_dakutenxEccAIxoY>>YAYEx1xexEicAuAAxox1/2xIxbxbxEx.xbx1
	 (x3xixIxAxbxeiciOY<<iUi<<ixxIiOY~ixxEEN'1xuxixoxEx1/2xIxbxb xExExexExxx|x3xExCx1)

	 $j->nmatchxoAIx,xAEYbYAYAx.xccoxo1/4eAEAxCxxbx1iL

       $j->z2h
	 X208Y<<YEiEA'3NiExoX201Y<<YEiEE3/43NiExEEN'1x.xbx1iL

	 $j->nmatchxoAIx,xAEYbYAYAx.xccoxo1/4eAEAxCxxbx1iL

       Auu~E1/2,1/2Y"YBYaYii1/4Yc

       "->m()"xE"->s()"xo>>Ex|xExIicPerl 5.8.1oE1Bx~ E~IxxCx1iL

       $j->tr($from, $t_, $opt);
	 JcodeYaYOY,YSY YExE"tr/$from/$to/"xoA~INx.xbx1iL$fromxE$toxI EUC-JPxIE,>>uIoxCx1iLPerl 5.8.1oE1BxCxIicflagEOxxIUTF-8E,>>uIo
	 xa1/4ox+-EOx+-xbx1iL

	 $optxoY>>YAYEx1xexEic"tr/$from/$to/$opt"x~A~INxuxixbx1iL$optxI 'c'ic'd'xcxexxxIx1/2xixexIAExB1cxix>>xCxEx+-xixDxExexbx>>xoiL

	 $j->nmatchxoAIx,xAEYbYAYAx.xccoxo1/4eAEAxCxxbx1iL

	 Perl 5.8.1oE1BxCxIictrxI.A1/4oxE,ixexIxcxAxc3/4i1cxE->error_trxoAIx,xAEic $@xo1/4eAEAxCxxbx1iL

	 oE21/4xIYaY1/2YAYExIPerl 5.8.1oE1BxCxIxBIoIN2AC1/2xCx1iL

       $j->s($patter, $replace, $opt);
	 ,Ai1xE"s/$pattern/$replace/$opt"xoA~INx.xbx1iL$optxIAuu~E1/2,1/_YaYxY.YcYoxE
	 AE+-x,xCx1iLAuu~E1/2,1/2xIYaYxY.YcYoxExAxxxAExIperlrexo>>23/4Ex xAxuxxiL
					       _
	 "$j->tr()"ic"$j->s()"xIx1/2xIYaYOY,YSY YE1/4<<cExoEOx1xIxCic oE21/4xIxex|xEAaoixoIc.exCxxbx1iL

	   $j->tr("A-Z", "a-z")->s("foo", "bar");

       [@match = ] $j->m($pattern, $opt);			  _
	 "m/$patter/$opt"xoA~_Nx.xbx1iLx3xIYaY1/2YAYExIiEYaYOY,YSY YExoEOxuxExxiE xIxCic"$j->s()"xIxex|xEYaY1/2YAYExoIc.exCx-
	 xExxx3xExEAioOx.xAEx xAxuxxiL

	 Auu~E1/2,1/2xI.A1/4oxE,ixexIxcxAxc3/4i1cic->error_mic->error_sxoAIx,xAE $@xo1/4eAEAxCxxbx1iL

       YxYoY1YcYoY1ENco
			 _			   _
       xax.J_odeYaYOY,YSY YExIY_YoY1Y_YoY1ENcoxEYcY Y>>Y1x.xcxxxExeicA3/4AUx1/2xixe
       xEYcY Y>>Y1x1xexIxCxIxEx icYcY Y>>Y1YaY1/2YAYExoIoINx.xbx.xcx|iEx3xix3/4OOP xCx1iEiL

       >>21IxbxCxEicJcodexIiEoiEIAaxEEyEixCxcxeiEYIYAY.YaYeYOYiYiYoY1xIAaxixexEic
       CUI_YeYOYiYiYoY1xo>>Ex|x3xExCicY1YOi1/4YExooCA~21/2x.xAExxxbx1iE1/4AoYxIxEx3xiic
       YcY Y>>Y1YaY1/2YAYExo>>Ex|,Axex3xIx3xExoAIxeE~IxxIxcxexbx>>xoi" xax|oiAU xxxxxbx1x~icx3xixIOOPxExIxCx1iEiL

       Perl 5.8.1oE1BxCxIicYIYAY.YaYeYOYiYiYoY1xo>>Ex|xex|xEEN11xuxixbx.xciL x3xixExexeicJcodexI3EAYxIxaxIx1x'x 'EA+-xExExexbx1iL

       $j->r_str
	 EUCE,>>uIoxOxIYeYOYiYiYoY1iL

	 Perl 5.8.1oE1BxCxIUTF-8YOYeYoxII(C)xAxcUTF-8E,>>uIoxOxIYeYOYiYiYoY1xCx1iL

       $j->icode
	 A3/49|axIAaoixExax+-xeAEbIIE,>>uY3i1/4YEiL

       $j->nmatch
	 YbYAYAx.xccoiE$j->trAuxo>>ExAxcxExiEiL

YuYOYei1/4YAYo
       ($code, [$nmatch]) = getcode($str)
	 $strxIE,>>uY3i1/4YExoEOx.xbx1iLEOxeY3i1/4YExIoE21/4xIAIxexCx1iL

	  ascii   Ascii iEAEuEU,iY3i1/4YExo'bxbxExxiE
	  binary  Binary iEYAEYY1YEYOYiYxYexCxIxExxiE
	  euc	  EUC-JP
	  sjis	  SHIFT_JIS
	  jis	  JIS (ISO-2022-JP)
	  ucs2	  UCS2 (Raw Unicode)
	  utf8	  UTF8

	 Y1Y<<Yei1/4Y3YoYAEYY1YExIAaxixexECUIoY3YoYAEYY1YExo>>Ex|xEic2cE,>>uE~xI
	 Y3i1/4YEx~,<<xAx<<xAxcxIx<<xaEOx.xbx1iL3/4axIEyxC1/2OxUxcxex|xEic$strxI$str xCxa11/2xxxbx>>xoiL

	 jcode.pl IoIN1/4OxIEyxOiS x3xI'OcoxIjcode::getcode()xE100%3/4aoI,B'1x~ xcxexbx1iLi1/2i1/2xbxcicxUxU100%i"

	  * IaxeAIx~CUIoxIxExicx1/2xI1/2cEOxIuOxExExexbx1i"
	    jcode::getcode()xI$nmatchxooC1/2exEEOx.xbx1iL

	  * jcode::getcode()xIicEUCE,>>uxESJISE,>>uxIcox~Aux.xxxExic'undef'xo
	    EOx.xbx1iL Jcode::getcode()xIEUCxoEOx.xbx1iLx3xixIJcode.pmxExI
	    Aae'Ox~xExxxcxaxCx1iL

       Jcode::convert($str, [$ocode, $icode, $opt])
	 $strxo$ocodexC>_OAex.xcE,>>uY3i1/4YExEEN'1x.xbx1iL$icodexa>>OAex1xexEic AEbIIE,>>uIoxoget-
	 code()xCYAYSYAY x1xeAaxixexEic$icodexE23/4Aex.xbx1iL 3/4axIEyxC1/2OxUxcxex|xEic$strxI$strxCxa11/2xxxbx>>xoiL

	 jcode.pl IoIN1/4OxIEyxOiS x3xI'OcoxIjcode::convert()xE100%3/4aoI,B'1x~ xcxexbx1ia

YDYo
       Perlx~5.8.1oE1BxI3/4i1cicJcodexIEncodexIYeYAYNi1/4xEx.xAEc9|xeEnxxxbx1iL xAxbxeicJcodexIEncodeAEaxIYDYoxI+-AE9|Axo1/4ox+-xbx1iL

1/4O1/4 							  _
       x3xIYNYAY+-i1/4Y,xIicAEouiicYCY9|YxYox1/2x.xAEY3i1/4YExIAcx xIAAxCic 2IAa IAAu
       <utashiro@iij.ad.jp>>>axIPerl4YeYxYOYeYejcode.plxEEexAxAExxxbx1iL
						    _									   _
       Acoe Ci'o <ohzaki@iod.ricoh.co.jp>>>axIic3<<E xIEo3/4ixE1/2e'uxIAE3~x<<xe Auu~E1/2,1/2xoEaxxcx2xe1/4e1/2ox+-xox.xAEx xixbx.xciL

       makamaka@donzoko.net xI JEncode xExIicJcodexEEncodexoxEx|I>>1cxux>>xixD xxxxx<<AcENAcx-
       xE.1/41/4"xo1/4ox+-xbx.xciLxbxcicEUAEuEU,iYbYEYaYcYexa'oALx.xAE xxxcxAxxbx.xciL

       x1/2x.xAEJcode ML <jcode5@ring.gr.jp>xI3SxuxoiLx3xIEyALxEx.xExIic x3x3xbxC'oA(R)x.xEx<<xAxcx3xExCx.xcx|iL

>>21I
       Encode

       <http://www.iana.org/assignments/character-sets>

Aooi,c
       Copyright 1999-2005 Dan Kogai <dankogai@dan.co.jp>

       This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

perl v5.8.8							    2005-02-19						       Jcode::Nihongo(3pm)
All times are GMT -4. The time now is 10:46 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy