در این مقاله، در مورد یک شیوه ساده برای کانفیگ کردن یک Header دلخواه برای همه bash script های جدید ایجاد شده در ادیتور vim بحث خواهیم کرد. به این معنا که هر زمان که شما یک فایل .sh جدید را با استفاده از ادیتور vi/vim باز میکنید، header مورد نظر به صورت اتوماتیک به فایل اضافه خواهد شد.
نحوه ایجاد کردن فایل Template Header برای Bash Script
ابتدا فایل template با نام "sh_header.temp" را تحت دایرکتوری ~/.vim/ در دایرکتوری Home ایجاد میکنیم که شامل header مورد نظر شما برای bash اسکریپت میباشد. (نکته : در صورتی که دایرکتوری .vim را ندارید آنرا به صورت دستی ایجاد کنید.)
سپس خط های زیر را در آن اضافه و ذخیره میکنیم. (شما میتوانید header مورد نظر خود را در دایرکتوری دلخواه تان تعریف و ایجاد کنید.)
Template بالا به صورت اتوماتیک خط shebang (یا “#!/bin/bash”) و همچنین header مورد نظر شما را اضافه میکند.
توجه کنید که در این مثال شما نام اسکریپت، توضیحات و argument ها را هنگام ویرایش کردن محتوای اسکریپت تان را به صورت دستی اضافه خواهید کرد.
تنظیمات Autocmd در فایل Vimrc
اکنون فایل تنظیمات vim تان را "فایل ~/.vimrc" برای ویرایش و اضافه کردن خط زیر به آخر آن، باز کنید.
در اینجا :
au : یعنی autocmd
bufnewfile : به معنی event و برای باز کردن فایلی که به منظور ویرایش کردن وجود ندارد، میباشد.
*.sh : تمام فایل های با پسوند .sh را بررسی میکند.
بنابراین خط بالا به نحوی عمل میکند که ویرایشگر vi/vim محتوای فایل template (به مسیر ) را بخواند و آنرا درون هر فایل .sh جدیدی که توسط کاربر باز میشود insert کند.
تست کردن Header Custom ایجاد شده برای فایل های جدید اسکریپت
اکنون شما میتوانید تست کنید که آیا مورد بالا با باز کردن یک فایل .sh جدید با استفاده از ادیتور vi/vim به درستی کار میکند و همچنین Header دستی شما باید به صورت اتوماتیک در اینجا اضافه شود.
برای کسب اطلاعات بیشتر لینک زیر را بررسی کنید.
Vim autocmd documentation
همچنین توصیه میشود مقالات مرتبط با bash script و ادیتور متن vi/vim را مطالعه بفرمایید.
10 نکته کاربردی برای نوشتن اسکریپت های Bash در Linux (به زودی)
10 دلیل برای استفاده از ادیتور متن Vi/Vim در Linux (به زودی)
نحوه محافظت از یک فایل Vim در Linux با استفاده از Password (به زودی)
چگونگی فعال کردن Syntax Highlighting در ادیتور متن Vi/Vim (به زودی)
اگر هر گونه سوال یا ترفند مفیدی در مورد bash scripting دارید با ما به اشتراک بگذارید.
نحوه ایجاد کردن فایل Template Header برای Bash Script
ابتدا فایل template با نام "sh_header.temp" را تحت دایرکتوری ~/.vim/ در دایرکتوری Home ایجاد میکنیم که شامل header مورد نظر شما برای bash اسکریپت میباشد. (نکته : در صورتی که دایرکتوری .vim را ندارید آنرا به صورت دستی ایجاد کنید.)
کد PHP:
$ vi ~/.vim/sh_header.temp
کد PHP:
#!/bin/bash
###################################################################
#Script Name :
#Description :
#Args :
#Author : Mohammad Nemati Habili
#Email : m.n.habili@gmail.com
###################################################################
Template بالا به صورت اتوماتیک خط shebang (یا “#!/bin/bash”) و همچنین header مورد نظر شما را اضافه میکند.
توجه کنید که در این مثال شما نام اسکریپت، توضیحات و argument ها را هنگام ویرایش کردن محتوای اسکریپت تان را به صورت دستی اضافه خواهید کرد.
تنظیمات Autocmd در فایل Vimrc
اکنون فایل تنظیمات vim تان را "فایل ~/.vimrc" برای ویرایش و اضافه کردن خط زیر به آخر آن، باز کنید.
کد PHP:
au bufnewfile *.sh 0r /home/mohammad/.vim/sh_header.temp
در اینجا :
au : یعنی autocmd
bufnewfile : به معنی event و برای باز کردن فایلی که به منظور ویرایش کردن وجود ندارد، میباشد.
*.sh : تمام فایل های با پسوند .sh را بررسی میکند.
بنابراین خط بالا به نحوی عمل میکند که ویرایشگر vi/vim محتوای فایل template (به مسیر ) را بخواند و آنرا درون هر فایل .sh جدیدی که توسط کاربر باز میشود insert کند.
تست کردن Header Custom ایجاد شده برای فایل های جدید اسکریپت
اکنون شما میتوانید تست کنید که آیا مورد بالا با باز کردن یک فایل .sh جدید با استفاده از ادیتور vi/vim به درستی کار میکند و همچنین Header دستی شما باید به صورت اتوماتیک در اینجا اضافه شود.
کد PHP:
$ vi test.sh
برای کسب اطلاعات بیشتر لینک زیر را بررسی کنید.
Vim autocmd documentation
همچنین توصیه میشود مقالات مرتبط با bash script و ادیتور متن vi/vim را مطالعه بفرمایید.
10 نکته کاربردی برای نوشتن اسکریپت های Bash در Linux (به زودی)
10 دلیل برای استفاده از ادیتور متن Vi/Vim در Linux (به زودی)
نحوه محافظت از یک فایل Vim در Linux با استفاده از Password (به زودی)
چگونگی فعال کردن Syntax Highlighting در ادیتور متن Vi/Vim (به زودی)
اگر هر گونه سوال یا ترفند مفیدی در مورد bash scripting دارید با ما به اشتراک بگذارید.