Sponsored Content
Full Discussion: Linux script - help!!
Top Forums Shell Programming and Scripting Linux script - help!! Post 302843306 by verdepollo on Monday 12th of August 2013 07:06:37 PM
Old 08-12-2013
ctime will also match files whose attributes have been recently changed, so in this case I would go with mtime instead.

Also, you don't mention your operating system so I'm gonna assume you are using GNU find which have some neat extra features. You could try:
Code:
find /var -type f -name "file_*.mtd" -mtime +365 | xargs tar -jcf somefile.tar.bz2 --remove-files && mailx -s "Some Stuff" user@domain.com

Keep in mind that the above command will only match files that are actually older than 12 months, regardless of their name (as long as they match the model "file_*.mtd").

That however doesn't take care of the monthly tar, so here's a better (untested) approach. You may need to change the date format but that is left as an exercise for you.
Code:
for month in $(seq -f %02g 1 12); do
	find /var -type f -name "file_$(date +%Y)${month}$(date +%d).mtd" -mtime +365 | \
	xargs tar -jcf "file_$(date +%Y)${month}.tar.bz2" --remove-files \
	&& echo "Some Stuff" | mailx -s "Subject" user@domain.com
done


Last edited by verdepollo; 08-12-2013 at 08:19 PM.. Reason: fixed mailx
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Linux Script help

Hi Everyone , have a nice day given below is a simple linux script but its first part is not working ( variable k assignment ) , while second loop is working fine can anyone help me out with this #!/bin/sh echo "Enter Date" read date1 for i in 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14... (6 Replies)
Discussion started by: Dastard
6 Replies

2. Shell Programming and Scripting

help with linux shell script

HI im a novice with shell scripts but i need help with a random script I have this folder filled with 500 different file names... I need help creating a script that will take each filename and make a new folder named that filename and then move that file into the newly created folder. Then the... (1 Reply)
Discussion started by: emachala
1 Replies

3. Shell Programming and Scripting

Help with linux bash script

Hello everybody! This is my first time having to write a script so your help is most appreciated.Also i am a beginner when it comes to linux so please bare with me.Thanks in advance to all who will look into this for me. I have to write a bash script that will show the free space on the hard... (4 Replies)
Discussion started by: manike
4 Replies

4. Shell Programming and Scripting

Linux script help

I am creating a script that will incorporate multiple variables organized in a spreadsheet for pdftk. I have a 1000 page pdf that I have to split into about 300 individual pdfs. The basic command line to extract pages is as follows: $ pdftk file.pdf cat 1-7 output newfile.pdf file.pdf =... (8 Replies)
Discussion started by: tankcommander
8 Replies

5. Linux

linux script

I need to write a script to which need to track errors in log and need to check last 100 lines in the log at every 5 minits. if error fund need to mail my self error type 1. "STATE_ADMIN" if found need to print: <Jan 5, 2011 11:47:02 AM IST><ewaps2> <ADFAPPS2> < STATE_ADMIN 2."Java heap... (0 Replies)
Discussion started by: udara
0 Replies

6. Shell Programming and Scripting

Help, Linux Script

#!/bin/sh args=("$@") echo "#=================================" echo "#Script Name:" echo "#By:" echo "#Purpose:" echo "#:Command Line: picoc" echo "#=================================" pico $@ this is my script. i think it is ok w/o error. but when i run it i got error. i'm using a VMBox... (1 Reply)
Discussion started by: jrdncchr
1 Replies

7. Shell Programming and Scripting

Need linux script!!

I have a text file like this: 25 raj 78 rohit 89 bhanu 58 mohit 29 mano 53 rohit 63 shiva 74 lapan 63 bhanu what i need is a linux script to reorganize this file by adding the relevant content(number) to the names and print only once.... please help me someone. ... (1 Reply)
Discussion started by: shan1990
1 Replies

8. Shell Programming and Scripting

Need help! Linux shell script

Hi all, I am trying to make a Nodemanager work in RHEL 5 I got this script from 'oraclemiddleware.wordpress.com', and made appropriate changes to suit my weblogic installation. I keep getting the error, "line 82: syntax error: unexpected end of file". I have checked every line to make sure all... (4 Replies)
Discussion started by: chakrv1
4 Replies

9. UNIX for Dummies Questions & Answers

Linux script

Hello, could you please help me with the following request? I need a linux command script that does the following. 1. delete folders folder1 and folder2 located in install/users/web/folder1&2. and also delete folder3 install/jboss/server/folder3. All these folders has many folder and files... (1 Reply)
Discussion started by: bern11
1 Replies

10. Shell Programming and Scripting

Linux script

can anyone help in this i have a file like 2089,success 2089,failure 2087,failure 2089,success 2087,failure. i want output like. 2089,success=2,failure=1 2087,success=1,failure=2 thanks (8 Replies)
Discussion started by: pradeep rawat
8 Replies
Jcode(3pm)						User Contributed Perl Documentation						Jcode(3pm)

NAME
Jcode - Japanese Charset Handler SYNOPSIS
use Jcode; # # traditional Jcode::convert($str, $ocode, $icode, "z"); # or OOP! print Jcode->new($str)->h2z->tr($from, $to)->utf8; DESCRIPTION
<Japanese document is now available as Jcode::Nihongo. > Jcode.pm supports both object and traditional approach. With object approach, you can go like; $iso_2022_jp = Jcode->new($str)->h2z->jis; Which is more elegant than: $iso_2022_jp = $str; &jcode::convert($iso_2022_jp, 'jis', &jcode::getcode($str), "z"); For those unfamiliar with objects, Jcode.pm still supports "getcode()" and "convert()." If the perl version is 5.8.1, Jcode acts as a wrapper to Encode, the standard charset handler module for Perl 5.8 or later. Methods Methods mentioned here all return Jcode object unless otherwise mentioned. Constructors $j = Jcode->new($str [, $icode]) Creates Jcode object $j from $str. Input code is automatically checked unless you explicitly set $icode. For available charset, see get- code below. For perl 5.8.1 or better, $icode can be any encoding name that Encode understands. $j = Jcode->new($european, 'iso-latin1'); When the object is stringified, it returns the EUC-converted string so you can <print $j> instead of <print $j->euc>. Passing Reference Instead of scalar value, You can use reference as Jcode->new($str); This saves time a little bit. In exchange of the value of $str being converted. (In a way, $str is now "tied" to jcode object). $j->set($str [, $icode]) Sets $j's internal string to $str. Handy when you use Jcode object repeatedly (saves time and memory to create object). # converts mailbox to SJIS format my $jconv = new Jcode; $/ = 00; while(&lt;&gt;){ print $jconv->set($_)->mime_decode->sjis; } $j->append($str [, $icode]); Appends $str to $j's internal string. $j = jcode($str [, $icode]); shortcut for Jcode->new() so you can go like; Encoded Strings In general, you can retrieve encoded string as $j->encoded. $sjis = jcode($str)->sjis $euc = $j->euc $jis = $j->jis $sjis = $j->sjis $ucs2 = $j->ucs2 $utf8 = $j->utf8 What you code is what you get :) $iso_2022_jp = $j->iso_2022_jp Same as "$j->h2z->jis". Hankaku Kanas are forcibly converted to Zenkaku. For perl 5.8.1 and better, you can also use any encoding names and aliases that Encode supports. For example: $european = $j->iso_latin1; # replace '-' with '_' for names. FYI: Encode::Encoder uses similar trick. $j->fallback($fallback) For perl is 5.8.1 or better, Jcode stores the internal string in UTF-8. Any character that does not map to ->encoding are replaced with a '?', which is Encode standard. my $unistr = "x{262f}"; # YIN YANG my $j = jcode($unistr); # $j->euc is '?' You can change this behavior by specifying fallback like Encode. Values are the same as Encode. "Jcode::FB_PERLQQ", "Jcode::FB_XML- CREF", "Jcode::FB_HTMLCREF" are aliased to those of Encode for convenice. 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;' The global variable $Jcode::FALLBACK stores the default fallback so you can override that by assigning the value. $Jcode::FALLBACK = Jcode::FB_PERLQQ; # set default fallback scheme [@lines =] $jcode->jfold([$width, $newline_str, $kref]) folds lines in jcode string every $width (default: 72) where $width is the number of "halfwidth" character. Fullwidth Characters are counted as two. with a newline string spefied by $newline_str (default: " "). Rudimentary kinsoku suppport is now available for Perl 5.8.1 and better. $length = $jcode->jlength(); returns character length properly, rather than byte length. Methods that use MIME::Base64 To use methods below, you need MIME::Base64. To install, simply perl -MCPAN -e 'CPAN::Shell->install("MIME::Base64")' If your perl is 5.6 or better, there is no need since MIME::Base64 is bundled. $mime_header = $j->mime_encode([$lf, $bpl]) Converts $str to MIME-Header documented in RFC1522. When $lf is specified, it uses $lf to fold line (default: ). When $bpl is speci- fied, it uses $bpl for the number of bytes (default: 76; this number must be smaller than 76). For Perl 5.8.1 or better, you can also encode MIME Header as: $mime_header = $j->MIME_Header; In which case the resulting $mime_header is MIME-B-encoded UTF-8 whereas "$j->mime_encode()" returnes MIME-B-encoded ISO-2022-JP. Most modern MUAs support both. $j->mime_decode; Decodes MIME-Header in Jcode object. For perl 5.8.1 or better, you can also do the same as: Jcode->new($str, 'MIME-Header') Hankaku vs. Zenkaku $j->h2z([$keep_dakuten]) Converts X201 kana (Hankaku) to X208 kana (Zenkaku). When $keep_dakuten is set, it leaves dakuten as is (That is, "ka + dakuten" is left as is instead of being converted to "ga") You can retrieve the number of matches via $j->nmatch; $j->z2h Converts X208 kana (Zenkaku) to X201 kana (Hankaku). You can retrieve the number of matches via $j->nmatch; Regexp emulators To use "->m()" and "->s()", you need perl 5.8.1 or better. $j->tr($from, $to, $opt); Applies "tr/$from/$to/" on Jcode object where $from and $to are EUC-JP strings. On perl 5.8.1 or better, $from and $to can also be flagged UTF-8 strings. If $opt is set, "tr/$from/$to/$opt" is applied. $opt must be 'c', 'd' or the combination thereof. You can retrieve the number of matches via $j->nmatch; The following methods are available only for perl 5.8.1 or better. $j->s($patter, $replace, $opt); Applies "s/$pattern/$replace/$opt". $pattern and "replace" must be in EUC-JP or flagged UTF-8. $opt are the same as regexp options. See perlre for regexp options. Like "$j->tr()", "$j->s()" returns the object itself so you can nest the operation as follows; $j->tr("a-z", "A-Z")->s("foo", "bar"); [@match = ] $j->m($pattern, $opt); Applies "m/$patter/$opt". Note that this method DOES NOT RETURN AN OBJECT so you can't chain the method like "$j->s()". Instance Variables If you need to access instance variables of Jcode object, use access methods below instead of directly accessing them (That's what OOP is all about) FYI, Jcode uses a ref to array instead of ref to hash (common way) to optimize speed (Actually you don't have to know as long as you use access methods instead; Once again, that's OOP) $j->r_str Reference to the EUC-coded String. $j->icode Input charcode in recent operation. $j->nmatch Number of matches (Used in $j->tr, etc.) Subroutines ($code, [$nmatch]) = getcode($str) Returns char code of $str. Return codes are as follows ascii Ascii (Contains no Japanese Code) binary Binary (Not Text File) euc EUC-JP sjis SHIFT_JIS jis JIS (ISO-2022-JP) ucs2 UCS2 (Raw Unicode) utf8 UTF8 When array context is used instead of scaler, it also returns how many character codes are found. As mentioned above, $str can be $str instead. jcode.pl Users: This function is 100% upper-conpatible with jcode::getcode() -- well, almost; * When its return value is an array, the order is the opposite; jcode::getcode() returns $nmatch first. * jcode::getcode() returns 'undef' when the number of EUC characters is equal to that of SJIS. Jcode::getcode() returns EUC. for Jcode.pm there is no in-betweens. Jcode::convert($str, [$ocode, $icode, $opt]) Converts $str to char code specified by $ocode. When $icode is specified also, it assumes $icode for input string instead of the one checked by getcode(). As mentioned above, $str can be $str instead. jcode.pl Users: This function is 100% upper-conpatible with jcode::convert() ! BUGS
For perl is 5.8.1 or later, Jcode acts as a wrapper to Encode. Meaning Jcode is subject to bugs therein. ACKNOWLEDGEMENTS
This package owes a lot in motivation, design, and code, to the jcode.pl for Perl4 by Kazumasa Utashiro <utashiro@iij.ad.jp>. Hiroki Ohzaki <ohzaki@iod.ricoh.co.jp> has helped me polish regexp from the very first stage of development. JEncode by makamaka@donzoko.net has inspired me to integrate Encode to Jcode. He has also contributed Japanese POD. And folks at Jcode Mailing list <jcode5@ring.gr.jp>. Without them, I couldn't have coded this far. SEE ALSO
Encode Jcode::Nihongo <http://www.iana.org/assignments/character-sets> COPYRIGHT
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(3pm)
All times are GMT -4. The time now is 12:40 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy