همانطور که میدانید محتوای فایلهای گزارش دائماً در حال افزایش است و این منجر به بزرگ شدن فایل گزارش میشود. در این آموزش، روشهای مختلف خالی کردن یک فایل (حذف محتوای آن بدون حذف خود فایل) در لینوکس آموزش داده میشود.
بدیهیترین روشی که به ذهن میخورد، این است که آن فایل بزرگ را پاک کرده و سپس یک فایل جدید ایجاد نماییم. اما این ایده خوبی نیست؛ چرا که، فایل جدید از نظر برچسب زمان (atime ,mtime, …) و مجوزها با فایل قبل متفاوت خواهد بود.
در این مقاله، مشاهده خواهید کرد که بهراحتی میتوان بهجای ایجاد یک فایل خالی جدید، محتوای آن را حذف کرد.
4 راه برای خالی کردن یک فایل در لینوکس
روشهای مختلفی برای خالی کردن یک فایل بدون حذف آن فایل وجود دارد. در اینجا، برخی از این روشها شرح داده میشود.
روش 1: استفاده از دستور truncate
امنترین راه برای خالی کردن فایل گزارش، استفاده از دستور truncate است.
truncate -s 0 filename
در دستور فوق، از s- برای تنظیم اندازه (به واحد بایت) فایل استفاده میشود. وقتی از دستور s 0- استفاده میکنید، اندازه فایل بر روی 0 بایت تنظیم میشود.
روش 2: استفاده از <: یا <
سادهترین روش برای خالی کردن یک فایل (در زمانی که از آن استفاده نمیشود)، استفاده از دستور زیر در bash است.
> filename
دستور < تنها در پوسته Bash کار میکند و شما میتوانید از یک دستور مشابه <: برای سایر پوستهها استفاده کنید:
:> filename
از این دستور نیز میتوان برای پاک کردن فایل نیز استفاده نمود:
true > filename
روش 3: استفاده از دستور echo
راه دیگر برای خالی کردن یک فایل، استفاده از دستور echo است:
echo > filename
میتوانید از دستور echo بهصورت زیر نیز استفاده کنید:
echo "" > filename
روش 4: استفاده از /dev/null
برای خالی کردن یک فایل، میتوان از ترکیب دستور معروف dev/null/ بههمراه دستور cat نیز استفاده نمود:
cat /dev/null > file.log
در پایان ...
اگر مجوز کافی برای هیچیک از دستورات بالا ندارید، از دستور زیر استفاده کنید. اگرچه این دستور استاندارد نیست؛ ولیکن میتواند شما را به هدفتان برساند:
touch newfile
mv newfile filename
منبع:
1 دیدگاه
نوشتن دیدگاه