فشرده سازی و آرشیو – Gzip / Zip / Tar

فشرده سازی فایل ها و
دایرکتوری ها علاوه بر صرفه جویی در میزان فضای مصرفی، نقل و انتقال و نگهداری آن
ها را نیز ساده تر می کند. رابط های گرافیکی مختلفی تحت لینوکس برای این کار وجود
دارد، اما در اینجا روش انجام این کار را از خط فرمان مرور خواهیم کرد.

برای فشرده سازی یک فایل از خط فرمان :

gzip filename.ext

و برای باز کردن این
نوع فایل از دستور زیر استفاده می کنیم :

gunzip filename.ext.gz

اگر بخواهیم از فرمت zip
استفاده کنیم، تا به عنوان مثال کاربران ویندوز هم از آن استفاده کنند از دستور زیر
استفاده کنید :

zip -r filename.zip files

و برای باز کردن فایل های zip
:

unzip filename.zip

همچنین می توانید چندین فایل را به صورت یک جا فشرده
کنید، از چنین ترکیبی استفاده کنید :

gzip filename.gz file1 file2 file3
/user/work/school

و برای آرشیو کردن فایل ها :

tar -cvf filename.tar files/directories
tar -cvf foo.tar /home/mine/work /home/mine/school

برای مشاهده
محتویات آرشیو :

tar -tvf foo.tar

و برای باز کردن آرشیو :

tar -xvf foo.tar

همچنین می توانید به هنگام ایجاد آرشیو آن را فشرده
کنید.

tar -czvf foo.tar

و یا یک آرشیو فشرده را باز کنید :

tar -xzvf foo.tgz



File Compression and Archiving — Gzip, Zip, and Tar

یک ذهن زیبا – A Beautiful Mind

برنامه دیشب سی نما۱
باز هم جالب بود. فیلم زیبای یک ذهن
زیبا
A
Beautiful Mind
که بر اساس داستان واقعی زندگی پروفسور
جان نش بنا شده بود.
پروفسور جان نش در سال ۱۹۹۴ به علت ارائه
نظریه
بازی ها
برنده
جایزه نوبل
در رشته اقتصاد
شده است. نکته ای که زندگی ایشان را متمایز می سازد ، ابتلا به
بیماری شیزوفرنی در
دهه ۱۹۵۰ می باشد.
زیبا ترین قسمت فیلم سخنرانی اهدا جایزه نوبل بود، متاسفانه نتوانستم اصل سخنرانی
را پیدا کنم.
تکمیل : متشکرم از دوست عزیزم، –
علی پرورش – به خاطر متن اهدا جوایز :

“I’ve always believed in numbers, the equation, logic will lead to
reason. After a lifetime of such pursuit I ask what truth is logic, who
decides reason. My quest has taken me to the physical, the
metaphysical, the delusional and back and I have made the most
important discovery of my career, the most important discovery of my
life. It is only in the mysterious equations of love that any logical
reasons can be found. I’m only here tonight because of my wife, she is
the reason I am. She is all my reasons.” Nobel Prize Ceremony Stockholm
۱۹۹۴٫

OSTG – بازمتن/لینوکس در خدمت شما

نفوذ استفاده از
محصولات بازمتن، در میان گروه های مختلف در حال افزایش است. توسعه دهندگان،
دانشجویان، حتی مدیران خبره، به قدرت و قابلیت های جنبش باز متن تا حدودی پی برده
اند و حداقل خود را برای آزمایش محصولاتی از این دست آماده می کنند. این گروه تازه
وارد – که حداقل برای آزمایش و آشنایی از محصولات بازمتن استفاده می کنند. – به
همراه قدیمی تر ها و حرفه ای ها گروهی را تشکیل می دهند که سازنده جامعه بازمتن می
باشد. این جامعه که اغلب از آن به عنوان Open Source Community
یاد می شود، به انواع گوناگونی سعی در مطرح کردن خود و آشنایی دیگران با این جنبش
دارند.
معروف ترین محصول این جامعه
لینوکس می باشد، سیستم عاملی که با بهره گیری از هزاران
عضو جامعه باز متن و ابزارهای بی نظیری که توسط اعضای این مجموعه توسعه پیدا کرده
اند در حال قدرت گیری هرچه بیشتر است. این قدرت در حیطه محصولات باز
متن تنها و تنها به خاطر
همفکری و اتحادی است که در آن وجود دارد.
تا به اینجا مقدمه ای بود برای معرفی یک از این گروه ها،
OSTG
.

شاید با نام
OSDN – Open Source Development Network – آشنا باشید. گروهی که از
اعضای قدرمتندی تشکیل شده بود تا به پیشرفت و توسعه باز متن کمک کند. حالا این

 

 گروه تحت نام
جدید خود Open Source Technology Group فعالیت
می کند. شاید یکی از دلایل آن باشد که دیگر به اندازه کافی توسعه پیدا کرده است تا
به عنوان یک تکنولوژی شناخته شود. این گروه علاوه بر فعالیت های تجاری خود شامل چند
وب سایت معتبر نیز می شود. این گروه این کار را تحت حمایت
VA Software انجام می دهد. این سایت ها با
استفاده از پخش اخبار، انتشار
مقاله و
آموزش های مختلف جایگاه ویژه ای در میان
جامعه باز متن دارند. حتی  برای سرگرمی
شما نیز فکر کرده است. ( شاید بیشتر باید گفت تجارت تا سرگرمی !!! )

   
slashdot.org
شاید معروف ترین عضو این
مجموعه Slashdot باشد. مجموعه ای از اخبار و
مقاله ها به همراه تعداد انبوهی از نظرات نقش مهمی در اینترنت دارد. این قدر مهم که
پدیده ای به نام slashdot Effect  را ایجاد کرد. خدایش
نصیب شما گرداناد !!!

  
 IT Manager’s Journal

مجموعه از مقاله ها و خبر ها با گرایش باز متن. پیش نهاد می کنم اگر دوست دارید از
تجربیات دیگران در نمونه های واقعی استفاده کنید، – حتی اگر احساس می کند هیچ وقت
به دردتان نخواهند خورد – این سایت را دنبال کنید.

   
NewsForge
– همیشه در این سایت اخبار
کل مجموعه و سایر سایت ها را خواهید خواند. شاید به عنوان پرتال این مجموعه بتوان
از آن یاد کرد.

   
Linux.com
این را با Linux.org
اشتباه نگیرید. با اینکه اهداف تجاری ویژه ای را دنبال می کند اما وجود قسمت های
کارآمد آن ارزشمند است.

   

SourceForge.net
و freshmeat

بانک نرم افزاری این مجموعه هستند. در SourceForge برای بیشتر سیستم عامل ها برنامه
های اشتراکی خواهید یافت ولی در freshmeat بیشتر طعم یونیکس
و مشتقات آن را احساس خواهید کرد.
Developer Channels نیز با ارائه
مقالات کاملا تکنیکی و کارآمد دو بانک نرم افزاری مجموعه را تقویت می کند. در این
سایت همیشه موضاعاتی را خواهید یافت که در عین سادگی نقش مفهومی ویژه ای را در
توسعه نرم افزار بازی می کنند.

   
ThinkGeek
– فروشگاه هم برای شما
آماده شده است، اما با طعم Geek. من که از گشتن در این
فروشگاه لذت می برم. ( هر چند تا به حال چیزی نخریده ام !!! )

امیدوارم معرفی این وب
سایت ها ( هر چند برای بیشتر شما تکراری هستند .) لذت استفاده از کامپیوتر را برای
شما بیشتر کند.

جدول راه راه تنها، نه خال خالیه راه راه

در نوشته قلبی (
Zebra Table / جدول
راه راه
) چگونگی ایجاد جدول با پس زمینه راه راه ، را مرور کردم. در این نوشته
هم با استفاده از CSS و جاوا امکان تغییر رنگی سطری که مکان
نما بر روی آن قرار دارد را نمایش می دهم.
بدون مقدمه به قطعه HTML زیر توجه کنید :

<style type="text/css">
<!–
    tr.outclr{
    }
    tr.inclr {
    background: #f0badd;
    }
–>
</style>
.
.
.
<table>
<tr class="outclr" onmouseover="this.className=’inclr
‘"onmouseout="this.className=’outclr’">
    <td>
        Hover Table !!!
    </td>
</tr>
</table>

توجه کنید رویدادهای
onmouseover و onmouseout می تواند برای سطر و یا ستون به کار رود. نحوه انتخاب
مکانی که از آن ها استفاده کنید به آرایش جدول شما بستگی دارد.
حال اگر این افکت را همراه با جدول راه راه در نظر بگیرد، و از یک
بانک اطلاعاتی استفاده کنید، چیزی شبیه به نمونه زیر را خواهید داشت :

echo "<table>";
while($row = mysql_fetch_array($sql)){
    $no = $num_results – $from;
    if (!isset($bgflag)) $bgflag = 0;
    if ($bgflag == 1) {
        echo "<tr class=\"outclr\"
onmouseover=\"this.className=’inclr’\" onmouseout=\"this.className=’outclr’\"
valign=\"top\" bgcolor=\"e3eef3\">";
        $bgflag = 2;
    } else {
        echo "<tr class=\"outclr\"
onmouseover=\"this.className=’inclr’\" onmouseout=\"this.className=’outclr’\"
valign=\"top\" bgcolor=\"b3e3f3\">";
        $bgflag = 1;
    }
    echo "<td align=\"center\">";
    echo "$no";
    echo "</td>";
    echo "<td>";
    echo "<a
href=\"http://".$row["link"]."\">".$row["link"]."</a>";
    echo "</td>\n";
    echo "</tr>";
}
echo "</table>";

امیدوارم تا به اینجا
بتوانید از این ترکیب استفاده کنید. سعی می کنم در ادامه این مطلب بک نمونه کامل را
نمایش دهم و فایل آماده را برای استفاده قرار دهم.
حتما روش های دیگری هم وجود دارد، لطفا اگر تجربه ای  داشته اید و یا روش
بهینه تری سراغ دارید مطرح کنید.

پست شد در : دسته‌بندی نشده | برچسب زده شد | ۲ دیدگاه

مبارکه

سالروز مبعث محمد امین ، بهانه ای است برای من و تو،
تا بیشتر به یاد طریقت یگانه و بی نظیر او باشیم. فرخنده باد نزول برترین کلام
هستی.

 

CyberCEO

وبلاگ
یک آدم این کاره ( به قول خودمون ) همیشه می تونه راه حل های جدیدی رو معرفی کند.
جناب بشاش امیدوارم که از مطالب خوبتون
استفاده کامل رو ببریم.

CyberCEO – All things for your online
life and business

Zebra Table / جدول راه راه

با فراگیری هر چه بیشتر
استفاده از CSS ، روند استفاده از table
ها رو به کاهش چشمگیری است. امروزه کمتر صفحه های حرفه ای را مشاهده می کنید که
برای ایجاد قسمت های اصلی آن ها از table استفاده شده باشد.
برای این منظور با استفاده از CSS و div
می توان هر حالتی را پیاده کرد. هم اکنون مناسب ترین استفاده از table
ها نمایش فیلد های یک بانک اطلاعاتی در قالب سطر ها و ستون ها می باشد.
به همین منظور نمایش این سطر و ستون ها به شیوه ای که مخاطب را به سادگی راهنمایی
کند، می تواند در ارزش گذاری محتوای بانک اطلاعاتی شما موثر واقع شود. بهترین و
خواناترین شیوه استفاده از سطرهایی است که یکی در میان رنگ متفاوتی
داشته باشند. برای درک بهتر می توانید به
این مقایسه
که در یکی از منابع این نوشته آمده است توجه کنید.
در این نوشته در ابتدا به نحوه ساختن این table های راه راه
با استفاده از javascript + css و سپس روشی ساده تر با
استفاده از php.

   
*   
Zebra Table
/ جدول راه راه – javascript
این قسمت را در
head قرار دهید :


// this function is needed to work around
// a bug in IE related to element attributes
function hasClass(obj) {
var result = false;
if (obj.getAttributeNode("class") != null) {
result = obj.getAttributeNode("class").value;
}
return result;
}

function stripe(id) {

// the flag we’ll use to keep track of
// whether the current row is odd or even
var even = false;

// if arguments are provided to specify the colours
// of the even & odd rows, then use the them;
// otherwise use the following defaults:
var evenColor = arguments[1] ? arguments[1] : "#fff";
var oddColor = arguments[2] ? arguments[2] : "#eee";

// obtain a reference to the desired table
// if no such table exists, abort
var table = document.getElementById(id);
if (! table) { return; }

// by definition, tables can have more than one tbody
// element, so we’ll have to get the list of child
// &lt;tbody&gt;s
var tbodies = table.getElementsByTagName("tbody");

// and iterate through them…
for (var h = 0; h < tbodies.length; h++) {

// find all the &lt;tr&gt; elements…
var trs = tbodies[h].getElementsByTagName("tr");

// … and iterate through them
for (var i = 0; i < trs.length; i++) {

// avoid rows that have a class attribute
// or backgroundColor style
if (! hasClass(trs[i]) &&
! trs[i].style.backgroundColor) {

// get all the cells in this row…
var tds = trs[i].getElementsByTagName("td");

// and iterate through them…
for (var j = 0; j < tds.length; j++) {

var mytd = tds[j];

// avoid cells that have a class attribute
// or backgroundColor style
if (! hasClass(mytd) &&
! mytd.style.backgroundColor) {

mytd.style.backgroundColor =
even ? evenColor : oddColor;

}
}
}
// flip from odd to even, or vice-versa
even = ! even;
}
}
}

با استفاده از این تابع در هنگام بارگزاری صفحه در
سمت clinet رنگ مناسب به جدول ها داده می شود. برای استفاده
از ترکیبی مانند حالت زیر در ادامه صفحه باید استفاده کنید :

<style type="text/css">
	#playlist {
		border: 1px solid #666666;
	}
	#playlist tbody tr td {
		font-family: "lucida grande", verdana, sans-serif;
		font-size: 8pt;
		padding: 3px 8px;
		border-left: 1px solid #D9D9D9;
	}	
	#playlist tbody tr.selected td {
		background-color: #3d80df;
		color: #ffffff;
		font-weight: bold;
		border-left: 1px solid #346DBE;
		border-bottom: 1px solid #7DAAEA;
	}
</style>
.
.
<body onload="stripe('playlist', '#fff', '#edf3fe');">
<div id="bottle">
<table id="playlist" cellspacing="0">
	<tbody>
		<tr>
			<td>1</td>
			<td>Lost In The Plot</td>
			<td>The Dears</td>
		</tr>
		<tr>
			<td>2</td>
			<td>Poison</td>
			<td>The Constantines</td>
		</tr>
		<tr class="selected">
			<td>3</td>
			<td>Plea From A Cat Named Virtute</td>
			<td>The Weakerthans</td>
		</tr>
		<tr>			<td>4</td>
			<td>Melissa Louise</td>
			<td>Chixdiggit!</td>
		</tr>
	</tbody>
</table>
</div>
</body>
</html>

برای این که بتونید
واقعا از چنین ترکیبی استفاده کنید، بهتره به سورس کد
این صفحه نمونه
نگاهی بیندازید.
    – توجه کنید این روش در سمت سرویس گیرنده اتفاق می افتد و در
صورتی که خانه های جدول زیاد باشد امکان دارد باعث وقفه در نمایش صفحه شود.
    – به علت استفاده از رویداد pageload در
این ترکیب امکان بروز مشکل در برخی حالت ها برای شما موجود است.
    – به علت استفاده از id که خاصیت یکتایی
است شما تنها قادر به استفاده از یک table با این خصوصیات
خواهید بود، مگر آنکه کمی زحمت بکشید و تغییراتی دهید. پیشنهاد می کنم حتما قسمت
Discuss این مقاله
را کامل بخوانید.

   
*   
Zebra Table
/ جدول راه راه – php
کمی تا قسمتی ساده تر است، ببینید :

<?php
if (!isset($bgflag)) $bgflag = 0;
if ($bgflag == 1) {
echo ‘<tr valign="top">’;
$bgflag = 2;
} else {
echo ‘<tr valign="top" bgcolor="E3ECED">’;
$bgflag = 1;
}
?>

باید بتوانید از آن
استفاده کنید، اگر مشکلی بود پیغام بگزارید. این مطلب به مرور کامل تر می شود. در
قسمت های بعدی متمایز کردن جدولی که موس بر روی آن است و نمایش تعداد مشخصی از جدول
در هر صفحه…


Zebra Tables