در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش لینوکس : مدیریت سیستم : قسمت 3 : Shell سفارشی : Aliases

سلام و وفت بخیر. یکی از مهم ترین feature های shell شاید alias باشد. alias نشان دهنده دستور است. برای اینکه یک دستور طولانی و یا پیچیده را بصورت کوتاه تر استفاده کنیم، برای آن یک alias نعریف میکنیم. alias مثل یک نام مستعار است. یک نام مستعار کوتاه تر و قابل یادآوری که به جای دستور طولانی یا پیچیده مینشیند. alias در حافظه موقت سیستم ذخیره میشود و با هر بار reboot سیستم مجبوریم آن را دوباره تعریف کنیم مگر اینکه آنرا ذخیره دائمی کرده باشیم. alias قبل از اینکه مسیر PATH برای هر کاربر پردازش شود، چک میشود. یکی از alias های پیش فرض سیستم، دستور ls است. در ترمینال خود type ls را وارد کنید. میبینید که دستور ls در حقیقت یک alias از دستور ls با سویچ اضافه است. به کد های زیر دقت کنید (اگه کد رو کپی میکردم رنگش نمی افتاد.)

در خط اول از دستور ls استفاده کردیم. محتویات درون مسیری که هستیم را نشان میدهد. رنگ آبی نشان دهنده مسیر است. رنگ سیاه یعنی فایل است. اگر هم فایل exe میداشتم سبز نشون میداد. سویچ F- نشان میدهد که جنس خروجی چیست. مثلا اگر directory باشد یک / میگذارد. اگر بخواهیم که دستور در حالت عادی اجرا شود و از alias استفاده نشود، قبل دستور یک \ میگذاریم. میبینید که وقتی \ گذاشتنم دیگه رنگی نشون نمیده. برای دیدن alias ها در ترمینال واژه alias را وارد کنید. لیستی مانند زیر نمایش داده خواهد شد.

آموزش لینوکس : مدیریت سیستم : قسمت 3 : Shell سفارشی : Aliases

حال میخواهم خودم یک alias ایجاد کنم. کلمه alias را مینویسم، سپس کلمه ای که به عنوان alias در نظر دارم. بعد از آن مساوی و درون ' ' دستور اصلی را وارد میکنم.

[root@CentOS6 /]# alias la='ls -al --color=auto'
[root@CentOS6 /]# type la
la is aliased to `ls -al --color=auto'

توجه داشته باشید که بصورت پیش فرض در همین ترمینال که هستم فقط این la تعریف شده است. برای از بین بردن alias هم از دستور unalias و نام alias استفاده کنید.

[root@CentOS6 ~]# alias la='ls -al --color=auto'
[root@CentOS6 ~]# alias
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias la='ls -al --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@CentOS6 ~]# unalias la
[root@CentOS6 ~]# alias
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@CentOS6 ~]# 

حاا این تنظیمات alias کجا ذخیره میشود؟؟ اگر شما هم مثل من از centos و یا یکی از توزیع های Red Hat استفاده میکنید، در مسیر home directory هر کاربر ( حتی root ) یک فایل به نام bashrc. وجود دارد. این فایل را باز کنید (با دستور cat) تا alias های دائمی را ببینید. برای اینکه یک alias همیشگی شود، آنرا در این فایل بنویسید. میتوانید از vim و یا gedit برای ویرایش این فایل استفاده کنید. با دستور ( vim .bashrc یا gedit .bashrc )

[root@CentOS6 ~]# whoami
root
[root@CentOS6 ~]# pwd
/root
[root@CentOS6 ~]# cat .bashrc
# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
	. /etc/bashrc
fi
[root@CentOS6 ~]# 
[root@CentOS6 ~]# cd /home/mohammad/
[root@CentOS6 mohammad]# cat .bashrc
# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
	. /etc/bashrc
fi

# User specific aliases and functions
[root@CentOS6 mohammad]# 

همانطور که در شکل مشخص است برای root سه تا alias پیش فرض وجود دارد ولی برای کاربر mohammad هنوز هیچ alias ثبت نشده است. ( فایل هایی مثل bashrc. که قبلشان نقطه است، اصطلاحا فایل های سیستمی هستند. ) تمرین : برای یک کاربر غیر از root یک alias درست کرده و برای همیشه آنرا ذخیره کنید. میتوانید از دستور << برای اضافه کردن ( append کردن) به انتهای فایل bashrc. استفاده کنید.

پایان قسمت سوم از بخش اول

نویسنده : سید محمد باقر موسوی

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

هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی است

#دوره_آموزشی_linux_فارسی #نوشتن_shell_script_در_لینوکس #آموزش_لینوکس_فارسی #آموزش_linux_مقدماتی #آموزش_shell_scripting #آموزش_دستورات_مقدماتی_لینوکس #آموزش_shell_scripting_در_لینوکس #دوره_آموزشی_shell_scripting_در_لینوکس #نوشتن_یک_shell_script_ساده
عنوان
1 آموزش لینوکس : مدیریت سیستم : قسمت 1 : Shell سفارشی : متغیرها رایگان
2 آموزش لینوکس : مدیریت سیستم قسمت 2 : Shell سفارشی : تنظیمات Shell رایگان
3 آموزش لینوکس : مدیریت سیستم : قسمت 3 : Shell سفارشی : Aliases رایگان
4 آموزش لینوکس : مدیریت سیستم : قسمت 4: Shell سفارشی: Login Scripts رایگان
5 آموزش لینوکس : مدیریت سیستم : قسمت 5 : ایجاد اسکریپت رایگان
6 آموزش لینوکس : مدیریت سیستم : قسمت 5 : Read User Input رایگان
7 آموزش لینوکس : مدیریت سیستم : قسمت 6 : IF Statement رایگان
8 آموزش لینوکس : مدیریت سیستم : قسمت 7 : Case Statement رایگان
9 آموزش لینوکس : مدیریت سیستم : قسمت 8 : Loops رایگان
10 آموزش لینوکس : مدیریت سیستم : قسمت 9 : Managing Users رایگان
11 آموزش لینوکس : مدیریت سیستم : قسمت 10 : Managing Groups رایگان
12 آموزش لینوکس : مدیریت سیستم : قسمت 11 : ارتباط با اکتیودایرکتوری رایگان
13 آموزش لینوکس : مدیریت سیستم : قسمت 12 : OpenLDAP رایگان
14 آموزش لینوکس : مدیریت سیستم : قسمت 13 : Cron AnaCron و Batch رایگان
15 آموزش لینوکس : مدیریت سیستم : قسمت 14 : آشنایی با IPTables رایگان
زمان و قیمت کل 0″ 0
3 نظر
samurai

درود دوست عزیز ممنون برای زحمتی که میکشین

من یه پیشنهاد دارم شمایی که دید برنامه نویسی دارید به نظرتون چطور میشه اگه کلا به صورت جامع رو اسکریپت نویسی کار کنید و آموزشهای اونو بزارید که همه استفاده کنن!

چون در وبسایتهای ایرانی واقعا جای بش اسکریپت درست حسابیی خالیه

سید محمد باقر موسوی

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

samurai

اول خواستم پایتون رو پیشنهاد بدم مثه اینکه مهندس احمدی برنامه ای ویژه برای این داره ..

من فک میکنم لینوکس و مدیریتش رو مهندس نصرتی دارره طبق سر فصل های lpi آموزش میده

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

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره پاییزه می تونی امروز ارزونتر از فردا خرید کنی ....