DDGR(1) User Commands DDGR(1)

ddgr - جستجو در DuckDuckGo از طریق خط فرمان

ddgr [OPTIONS] [KEYWORD [KEYWORD ...]]

ddgr یک ابزار خط فرمانی برای جستجو در DuckDuckGo (نسخه html) است. ddgr عنوان، URL و متن زمینه را برای هر نتیجه نمایش می‌دهد. نتایج به صورت صفحه‌بندی‌شده دریافت می‌شوند. کلیدهای میانبر صفحه‌کلید برای پیمایش بین صفحات در دسترس هستند. نتایج شماره‌گذاری (نمایه‌گذاری) شده‌اند و URL هر نتیجه را می‌توان با استفاده از شماره نمایه در یک مرورگر باز کرد. هیچ فایل پیکربندی وجود ندارد زیرا نام‌های مستعار (alias) برای این ابزار همان هدف را برآورده می‌کنند. همچنین از جستجوهای متوالی در یک نمونهٔ اجرایی واحد پشتیبانی می‌کند.

ویژگی‌ها


* سریع و تمیز؛ رنگ‌بندی سفارشی
* طراحی‌شده برای بیشترین خوانایی در کمترین فضا
* پاسخ‌های فوری (پشتیبانی‌شده توسط نسخه html در DDG)
* تعداد سفارشی نتایج در هر صفحه
* پیمایش و یکپارچگی با مرورگر
* اسکریپت‌های تکمیل خودکار جستجو و گزینه‌ها (Bash، Fish، Zsh)
* قابلیت Bangs در DuckDuckGo (به همراه تکمیل خودکار)
* باز کردن نخستین نتیجه در مرورگر (I'm Feeling Ducky)
* محیط تعاملی (REPL) برای جستجوهای پیوسته
* کلیدواژه‌ها (مانند `filetype:mime`، `site:somesite.com`)
* محدود کردن جستجو بر اساس زمان، تعیین منطقه جغرافیایی، غیرفعال‌سازی جستجوی ایمن
* پشتیبانی از پراکسی HTTPS، امکان غیرفعال‌سازی اختیاری User Agent
* فعال بودن پیش‌فرض قابلیت «ردیابی نکن» (Do Not Track)
* پشتیبانی از اسکریپت سفارشی یا ابزار خط فرمانی برای مدیریت URL
* مستندسازی کامل، دارای صفحه راهنما همراه با مثال‌ها
* وابستگی‌های نرم‌افزاری حداقلی

نمایش متن راهنما و خروج.
نمایش N نتیجه در هر صفحه (پیش‌فرض ۱۰ است). N باید بین ۰ تا ۲۵ باشد. مقدار N=0 صفحه‌بندی ثابت را غیرفعال کرده و تعداد واقعی نتایج دریافت‌شده در هر صفحه را نمایش می‌دهد.
جستجوی مختص به منطقه، مثلاً 'us-en' برای ایالات متحده (پیش‌فرض)؛ به https://duckduckgo.com/params مراجعه کنید.
غیرفعال‌سازی خروجی رنگی.
تنظیم رنگ‌های خروجی. برای جزئیات به بخش COLORS در ادامه مراجعه کنید.
باز کردن نخستین نتیجه در مرورگر وب؛ گزینهٔ --noprompt را نیز در بر دارد. احساس خوش‌شانسی می‌کنید؟ (Feeling Ducky).
محدود کردن زمانی جستجو [d=روز گذشته، w=هفته گذشته، m=ماه گذشته، y=سال گذشته] (پیش‌فرض=هر زمانی).
جستجو در یک وبگاه با استفاده از DuckDuckGo.
گسترش دادن URLها به جای نمایش تنها نام دامنه (پیش‌فرض).
تونل کردن ترافیک از طریق یک پراکسی HTTP. مقدار URI به صورت [http[s]://][user:pwd@]host[:port] است. سرور پراکسی باید از تونل‌زنی HTTP CONNECT پشتیبانی کند و نباید پورت ۴۴۳ را برای میزبان‌های مربوطهٔ DuckDuckGo مسدود کرده باشد. اگر پراکسی صریحاً مشخص نشده باشد، متغیر محیطی https_proxy یا HTTPS_PROXY (در صورت در دسترس بودن) به جای آن استفاده می‌شود.
غیرفعال‌سازی جستجوی ایمن (safe search).
غیرفعال‌سازی عامل کاربر (user agent). نتایج سریع‌تر دریافت می‌شوند.
خروجی با قالب JSON؛ گزینهٔ --noprompt را نیز در بر دارد.
باز کردن مستقیم یک bang در مرورگر گرافیکی (GUI).
انجام جستجو و خروج؛ برای تعاملات بعدی اعلان نمایش داده نمی‌شود.
فهرست کردن مدخل‌ها با ترتیب معکوس.
اسکریپت سفارشی یا ابزار خط فرمانی برای باز کردن URLها با آن.
جلوگیری نکردن از نمایش خروجی مرورگر هنگام باز کردن نتیجه در مرورگر؛ به این معنی که stdout و stderr مرورگر به جای /dev/null به stdout و stderr برنامهٔ ddgr متصل می‌شوند. به طور پیش‌فرض، خروجی مرورگر سرکوب می‌شود (به دلیل اینکه برخی مرورگرهای گرافیکی پیام‌هایی را در کنسول چاپ می‌کنند)، مگر اینکه متغیر محیطی BROWSER یک مرورگر متنی شناخته‌شده باشد: elinks، links، lynx، w3m یا www-browser.
نمایش شماره نسخه و خروج.
فعال‌سازی اشکال‌زدایی.

دریافت مجموعه نتایج بعدی، قبلی یا اول.
باز کردن نتیجه متناظر با شماره نمایه در مرورگر.
باز کردن نمایه‌های جداشده با فاصله، بازه‌های عددی، یا همهٔ نمایه‌ها در صورت تعیین 'a'، در مرورگر.
مشابه کلید 'o' کار می‌کند، اما سعی می‌کند مرورگرهای متنی را نادیده بگیرد (حتی اگر BROWSER تنظیم شده باشد) و پیوندها را در یک مرورگر گرافیکی باز کند.
شروع یک جستجوی جدید در DuckDuckGo برای keywords با گزینه‌های اولیه. از این کلید باید برای جستجوی کلیدهای omniprompt (شامل خودش) و نمایه‌ها استفاده شود.
تغییر وضعیت گسترش URL.
کپی کردن URL به کلیپ‌بورد.
خروج از ddgr.
?
نمایش راهنمای omniprompt.
*
هر رشتهٔ دیگری یک جستجوی جدید را با گزینه‌های اولیه آغاز می‌کند.

ddgr به شما امکان می‌دهد طرح رنگ‌بندی را از طریق یک رشتهٔ شش‌حرفی، مشابه با LSCOLORS در BSD، سفارشی‌سازی کنید. این شش حرف به ترتیب نشان‌دهندهٔ رنگ‌های زیر هستند:

-
نمایه‌ها
-
عنوان‌ها
-
نشانی‌های URL
-
فراداده/اطلاعات انتشار
-
چکیده‌ها
-
اعلان‌ها
به ترتیب. این رشته شش‌حرفی یا به عنوان آرگومان به گزینهٔ --colors فرستاده می‌شود، یا به عنوان مقدار متغیر محیطی DDGR_COLORS تعیین می‌گردد.
رنگ‌ها/سبک‌های زیر ارائه شده‌اند:
Letter Color/Style
a black
b red
c green
d yellow
e blue
f magenta
g cyan
h white
i bright black
j bright red
k bright green
l bright yellow
m bright blue
n bright magenta
o bright cyan
p bright white
A-H bold version of the lowercase-letter color
I-P bold version of the lowercase-letter bright color
x normal
X bold
y reverse video
Y bold reverse video
رشته رنگ‌های پیش‌فرض oCdgxy است که نشان‌دهندهٔ موارد زیر است:
-
نمایه‌های فیروزه‌ای روشن
-
عنوان‌های سبز برجسته
-
نشانی‌های URL زرد
-
فراداده/اطلاعات انتشار فیروزه‌ای
-
چکیده‌های عادی
-
اعلان‌های ویدئوی معکوس
توجه داشته باشید که
-
رنگ‌های روشن (پیاده‌سازی‌شده به صورت \x1b[90m - \x1b[97m) ممکن است در تمام شبیه‌سازهای ترمینال با قابلیت رنگ در دسترس نباشند؛
-
برخی از شبیه‌سازهای ترمینال، متن برجسته (bold) را به جای آن با رنگ‌های روشن رسم می‌کنند؛
-
برخی از شبیه‌سازهای ترمینال تنها از طریق یک سوئیچ که به طور پیش‌فرض غیرفعال است، بین رنگ‌های برجسته و روشن تفاوت قائل می‌شوند.
لطفاً برای جزئیات بیشتر به دفترچه راهنمای شبیه‌ساز ترمینال خود و همچنین https://en.wikipedia.org/wiki/ANSI_escape_code مراجعه کنید.

مرورگر پیش‌فرض را لغو می‌کند و تغییر می‌دهد. مرجع: http://docs.python.org/library/webbrowser.html
به بخش COLORS مراجعه کنید.
اگر در اعلان با رنگ‌ها مشکل دارید، یک اعلان ساده بدون رنگ را اجبار می‌کند.
به گزینهٔ --proxy مراجعه کنید.

1.
جستجوی hello world در DuckDuckGo:
ddgr hello world
2.
جستجوی I'm Feeling Ducky:
ddgr -j lucky ducks
3.
جستجوی عبارت 'hello world' در ویکی‌پدیا با DuckDuckGo Bang:
ddgr !w hello world
ddgr \!w hello world // bash-specific, need to escape ! on bash
قابلیت Bangs در omniprompt نیز کار می‌کند. برای جستجوی bangها به https://duckduckgo.com/bang?#bangs-list مراجعه کنید.
4.
ایجاد نام مستعار برای Bang جهت اجرا از خط فرمان، باز کردن نتایج در مرورگر گرافیکی و سپس خروج:
alias bang='ddgr --gb --np'
bang !w hello world
bang \!w hello world // bash-specific, need to escape ! on bash
5.
جستجوی مختص به یک وبگاه:
ddgr -w amazon.com digital camera
جستجوی مختص به وبگاه در omniprompt ادامه می‌یابد.
6.
جستجو برای یک نوع فایل خاص:
ddgr instrumental filetype:mp3
7.
دریافت نتایج مربوط به کریکت IPL از هند به زبان انگلیسی:
ddgr -r in-en IPL cricket
برای یافتن شناسه پارامتر منطقه خود به https://duckduckgo.com/params مراجعه کنید.
8.
جستجوی متن داخل گیومه:
ddgr it\'s a \"beautiful world\" in spring
9.
نمایش نشانی‌های اینترنتی کامل در نتایج جستجو (به جای فقط نام دامنه):
ddgr -x ddgr
10.
استفاده از یک طرح رنگ سفارشی، برای مثال یک طرح رنگ گرم طراحی‌شده برای Solarized Dark:
ddgr --colors bjdxxy hello world
DDGR_COLORS=bjdxxy ddgr hello world
11.
تونل کردن ترافیک از طریق یک پراکسی HTTPS، مثلاً یک نمونه محلی Privoxy که روی پورت ۸۱۱۸ گوش می‌دهد:
ddgr --proxy localhost:8118 hello world
به صورت پیش‌فرض در صورت تعریف شدن متغیر محیطی https_proxy (یا HTTPS_PROXY)، از آن استفاده می‌شود.
12.
جستجوی n، p، o، O، q، d keywords یا یک نمایه نتیجه در omniprompt: از آنجا که omniprompt این کلیدها یا رشته‌های نمایه را به عنوان دستور می‌شناسد، باید قبل از آن‌ها پیشوند d را اضافه کنید، به عنوان مثال:
d n
d d keywords
d 1

Arun Prakash Jana <engineerarun@gmail.com>

https://github.com/jarun/ddgr

https://github.com/jarun/ddgr/issues

حق نشر © 2016-2024 متعلق به Arun Prakash Jana <engineerarun@gmail.com> است.

مجوز GPLv3+‎: گنو GPL ویرایش ۳ یا جدیدتر http://gnu.org/licenses/gpl.html.
این نرم‌افزار آزاد است: شما در تغییر و بازتوزیع آن آزاد هستید. تا جایی که قانون اجازه می‌دهد، هیچ ضمانتی وجود ندارد.

29 Dec 2023 Version 2.2