انجمنهای فارسی اوبونتو
کمک و پشتیبانی => راهنماها، نکات و ترفندها => نویسنده: desatir7316 در 23 امرداد 1391، 03:42 بظ
-
سلام دوستان ببخشید سوالمو ایجا می پرسم
نمی دونم چرا قسمت تازه کارها توش نمی شه تاپیک جدید زد
می خواستم بپرسم علامت نقطه و اون علامتی که شبیه or هستن توی دستورات ترمینال چی کار می کنن
مثل:dmesg | egrep hd.\|sd.
یا:rsync -r /cdrom/* .
نمی خوام دستورات تفسیر بشن، می خوام کار این دو مورد(. و | ) رو بفهمم
ممنون
-
علامت نقطه نماد دایرکتوری جاری (خروجی pwd) هست
بهش میگن dynamic current directory چون هر موقع یه مسیری هست (دایرکتوری جاری رو تغییر بدید با cd ، نقطه به دایکتوری جاری جدید اشاره میکنه)
علامت | هم بستگی داره کجا استفاده بشه، اینجا که توی egrep استفاده کردید قسمتی از regular expression هست و نماد or هست (یعنی یا این رشته یا اون رشته هر کدوم باشن)
ولی توی خود شل (بین دستورات، نه بعنوان آرگومان) نماد PIPE (لوله) هست یعنی خروجی دستور اول رو بعنوان ورودی به دستور دوم میفرسته، مثلا
ls -1 | grep foo
پ.ن: دستور اول که نوشتید، چون قبل از | علامت بکاسلش گذاشتید، بعنوان PIPE حساب نمیکنه (بکاسلش رو بردارید خراب میشه) میشه بجای بکاسلش گذاشتن قبلش، کل رشته رو توی single quote بذارید یعنی:
dmesg | egrep 'hd.|sd.'
-
علامت نقطه نماد دایرکتوری جاری (خروجی pwd) هست
بهش میگن dynamic current directory چون هر موقع یه مسیری هست (دایرکتوری جاری رو تغییر بدید با cd ، نقطه به دایکتوری جاری جدید اشاره میکنه)
علامت | هم بستگی داره کجا استفاده بشه، اینجا که توی egrep استفاده کردید قسمتی از regular expression هست و نماد or هست (یعنی یا این رشته یا اون رشته هر کدوم باشن)
ولی توی خود شل (بین دستورات، نه بعنوان آرگومان) نماد PIPE (لوله) هست یعنی خروجی دستور اول رو بعنوان ورودی به دستور دوم میفرسته، مثلا
ls -1 | grep foo
پ.ن: دستور اول که نوشتید، چون قبل از | علامت بکاسلش گذاشتید، بعنوان PIPE حساب نمیکنه (بکاسلش رو بردارید خراب میشه) میشه بجای بکاسلش گذاشتن قبلش، کل رشته رو توی single quote بذارید یعنی:
dmesg | egrep 'hd.|sd.'
دوست عزیز ممنون
خیلی خوب توضیح دادین
همچین اطلاعاتی رو از کجا میتونم پیدا کنم که دیگه به مشکل بر نخورم
ممنون
-
دوست عزیز ممنون
خیلی خوب توضیح دادین
همچین اطلاعاتی رو از کجا میتونم پیدا کنم که دیگه به مشکل بر نخورم
ممنون
خواهش میکنم
http://wiki.linuxreview.ir/Shell-scripting-tutorial
اخیرا این راهنما رو داشتیم تکمیل میکردیم. مفصله ولی قطعاً ضرر نمیکنید اگه کامل بخونید.