sd(1) General Commands Manual sd(1) نام (NAME) sd - ابزاری شهودی برای جست‌وجو و جایگزینی متن خلاصه دستور (SYNOPSIS) sd [-p|--preview] [-F|--fixed-strings] [-n|--max-replacements] [-f|--flags] [-A|--across] [-h|--help] [-V|--version] [FILES] توضیحات (DESCRIPTION) گزینه‌ها (OPTIONS) -p, --preview نمایش تغییرات در قالبی خوانا برای انسان (احتمال تغییر جزئیات این قالب در آینده وجود دارد) -F, --fixed-strings در نظر گرفتن آرگومان‌های FIND و REPLACE_WITH به عنوان رشته‌های متنی صریح -n, --max-replacements=LIMIT [پیش‌فرض: 0] محدود کردن تعداد جایگزینی‌هایی که می‌تواند در هر فایل رخ دهد. مقدار 0 به معنای جایگزینی‌های نامحدود است -f, --flags=FLAGS پرچم‌های Regex. می‌توانند با یکدیگر ترکیب شوند (مانند `-f mc`). c - حساس به بزرگی و کوچکی حروف e - غیرفعال‌سازی تطبیق چندخطی i - غیرحساس به بزرگی و کوچکی حروف m - تطبیق چندخطی s - در نظر گرفتن نویسه خط جدید در تطبیق `.` w - فقط تطبیق کامل کلمات -A, --across پردازش هر ورودی به‌صورت یکپارچه به جای خط به خط. این گزینه امکان تطبیق الگوها در میان مرزهای خطوط را فراهم می‌سازد، اما حافظه بیشتری مصرف کرده و مانع از پردازش جریانی (streaming) می‌شود -h, --help چاپ راهنما (مشاهده خلاصه‌ای از آن با '-h') -V, --version چاپ نسخه عبارت باقاعده (regexp) یا رشته متنی (در صورت استفاده از `-F`) برای جست‌وجو محتوایی که با هر مورد منطبق جایگزین می‌شود. به جز در حالت رشته، می‌توانید از مقادیر گروه‌های ضبط‌شده مانند $1، $2 و غیره استفاده کنید [FILES] مسیر فایل(ها). این آرگومان اختیاری است - sd همچنین می‌تواند از STDIN بخواند. نکته: sd به‌طور پیش‌فرض فایل‌ها را در جا (in-place) ویرایش می‌کند. برای مشاهده مثال‌ها به مستندات مراجعه کنید. وضعیت خروج (EXIT STATUS) 0 اجرای موفقیت‌آمیز برنامه. 1 اجرای ناموفق برنامه. 101 برنامه با خطای بحرانی (panic) متوقف شد. مثال‌ها (EXAMPLES) حالت رشته صریح (String-literal) $ echo 'lots((([]))) of special chars' | sd -F '((([])))' '' lots of special chars استفاده از Regex؛ حذف فاصله‌های خالی انتهای خطوط $ echo 'lorem ipsum 23 ' | sd '\s+$' '' lorem ipsum 23 گروه‌های ضبط شماره‌گذاری‌شده (Indexed capture groups) $ echo 'cargo +nightly watch' | sd '(\w+)\s+\+(\w+)\s+(\w+)' 'cmd: $1, channel: $2, subcmd: $3' cmd: cargo, channel: nightly, subcmd: watch جست‌وجو و جایگزینی درون فایل $ sd 'window.fetch' 'fetch' http.js جست‌وجو و جایگزینی از STDIN و ارسال به STDOUT $ sd 'window.fetch' 'fetch' < http.js sd 1.0.0 sd(1)