وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

روش نوشتن در یک فایل در Bash

0 6
زمان لازم برای مطالعه: 3 دقیقه


خواندن و نوشتن فایل ها یکی از کارهای رایج هنگام نوشتن است bash اسکریپت ها به عنوان مثال، ذخیره خروجی یک دستور در یک فایل یا به سادگی دستکاری فایل های موجود در آن bash دستورات مختلف استفاده می شود. روش های مختلفی برای نوشتن هر فایلی وجود دارد bash از طریق terminal و اگر راه هایی برای نوشتن هر فایلی در حین اسکریپت پیدا می کنید، این راهنما را بخوانید.

نوشتن فایل در Bash

همانطور که در بالا ذکر شد راه های مختلفی برای نوشتن هر فایل در حالی وجود دارد bash اسکریپت و در زیر چند روش برای نوشتن یک فایل در آن وجود دارد bash:

استفاده از عملگرهای جهت دار

به طور کلی دو عملگر جهت دار وجود دارد که می توان از آنها برای نوشتن یک فایل استفاده کرد bash اسکریپت، یکی تک براکت زاویه است “>” و دیگری براکت زاویه دوتایی است “>>”. تفاوت اصلی بین این دو در این است “>” داده هایی را که قبلاً در فایل موجود بود با داده های جدید بازنویسی می کند، در حالی که “>>” روی از طرف دیگر فقط داده های جدید را در فایل اضافه می کند.

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

$ اکو <“داده ها”> <جهت دهنده-اپراتور> <نام فایل>

به عنوان مثال، برای اضافه کردن داده به هر فایلی که در حال حاضر خالی است یا برای بازنویسی داده ها در هر فایلی، از نحو ذکر شده در بالا مانند این استفاده کنید:

$ اکو “سلام Linuxhint 1> myfile.txt

روش نوشتن در یک فایل در Bash

بعد، برای استفاده “>>” عملگر جهتی برای افزودن هر گونه داده در فایل من از نحو ذکر شده در بالا به این صورت استفاده کرده ام:

$ اکو “سلام Linuxhint 2>> myfile.txt

روش نوشتن در یک فایل در Bashروش نوشتن در یک فایل در Bash

به یاد داشته باشید که نحو ذکر شده در بالا نه تنها فایل را می نویسد، بلکه اگر فایلی وجود نداشته باشد، یک فایل نیز ایجاد می کند.

پیشنهاد می‌کنیم بخوانید:  دریافت خطا در اسکریپت Bash. Expr $a + 1: عبارت عدد صحیح مورد انتظار

با استفاده از فرمان سه راهی

راه دیگری برای نوشتن هر فایل در حالی که bash اسکریپت نویسی با استفاده از دستور tee است و در زیر دستور داده شده برای استفاده از این دستور آمده است:

$ اکو “داده ها” | سه راهی <نام فایل>

به عنوان مثال، اگر من بخواهم هر گونه داده ای را به هر فایلی اضافه کنم، نحو ذکر شده در بالا می تواند به صورت زیر استفاده شود:

$ اکو “به Linuxhint خوش آمدید” | سه راهی myfile.txt

روش نوشتن در یک فایل در Bashروش نوشتن در یک فایل در Bash

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

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

$ اکو “با درود” | سه راهی myfile.txt

روش نوشتن در یک فایل در Bashروش نوشتن در یک فایل در Bash

اگر می خواهید یک داده را به چندین فایل اضافه کنید، این دستور می تواند کمک بزرگی باشد سه راهی دستور را می توان برای چنین اهدافی استفاده کرد:

$ اکو “با درود” | سه راهی myfile1.txt myfile2.txt myfile3.txt

روش نوشتن در یک فایل در Bashروش نوشتن در یک فایل در Bash

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

$ اکو “این یک است تست فایل| سودو سه راهی myfile1.txt

روش نوشتن در یک فایل در Bashروش نوشتن در یک فایل در Bash

با استفاده از دستور printf

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

$ printf سلام از linuxhin \nاین یک است تست فایل.\n” >> myfile1.txt

روش نوشتن در یک فایل در Bashروش نوشتن در یک فایل در Bash

با استفاده از Heredoc

روش دیگری برای نوشتن فایل در bash با استفاده از اینجا سند فرمت، هیچ نوع دستوری نیست، اما بیشتر شبیه فرمتی است که می توان برای نوشتن چندین خط داده از آن پیروی کرد، در زیر فرمت heredoc آمده است:

گربه << [delimiter]

پیشنهاد می‌کنیم بخوانید:  ایجاد توابع Bash با آرگومان ها

داده ها…………

[delimiter]

در اینجا در نحو از cat برای خواندن داده ها استفاده می شود و جداکننده نوعی مرز برای داده ها است. می تواند یک رشته یا نام فایل باشد. در عمل معمولی معمولاً از END یا EOF به عنوان جداکننده استفاده می شود، اما همه چیز بستگی دارد روی ترجیح کاربر

به عنوان مثال، من یک فایل .sh ایجاد کرده ام و از فرمت heredoc به شکل زیر استفاده کرده ام:

#! /صندوقچه/bash

گربه << MYFILE درود از Linuxhint این یک فایل آزمایشی است که با استفاده از heredoc ایجاد شده است MYFILE

روش نوشتن در یک فایل در Bashروش نوشتن در یک فایل در Bash

حال برای اینکه ببینیم داده ها به درستی ذخیره شده اند یا نه، اجازه دهید این فایل را با استفاده از:

$ bash mybashscript.sh

روش نوشتن در یک فایل در Bashروش نوشتن در یک فایل در Bash

نتیجه

نوشتن فایل در حالی که bash اسکریپت نویسی در یک سیستم لینوکس کار سختی است اگر کسی دانش کافی در مورد استفاده از دستورات لینوکس نداشته باشد. این راهنما 4 راه برای نوشتن هر فایل در حالی ارائه می دهد bash اسکریپت نویسی که عبارتند از: استفاده از عملگرهای جهت دار، سه راهی فرمان، printf و heredoc.

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

زمان انتشار: 1402-12-29 16:01:03

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید