شما هنوز به سیستم وارد نشده اید.

#26 2016-10-23 23:38:20

Arcush
Moderator
ثبت شده: 2015-09-15
ارسال ها: 1,390

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

مشاهده تعداد اتصالات به شبکه درحالت عادی (که یکشیون مودم هست):

$ nmap -sP 192.168.1.0/24

لطفا اگر دوستانم دستورات مفیدتری در این رابطه میشناسن، به اشتراک بذارید.

آفلاین

#27 2017-02-13 19:23:22

Arcush
Moderator
ثبت شده: 2015-09-15
ارسال ها: 1,390

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

مشاهده  به ترتیب ۶ فایل/دایرکتوری حجیم سیستم:

$ du -hsx * | sort -rh | head -6

http://www.tecmint.com/5-linux-command-line-tricks/

آخرین ویرایش توسط Arcush (2017-02-14 15:16:25)

آفلاین

#28 2017-02-19 21:11:26

LinArcX
عضو
ثبت شده: 2015-09-18
ارسال ها: 790

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

stty ابزاری هست که میتونید باهاش تنظیمات شل تونو دستکاری کنید.یکی از کاربردهای باحالش دیدن هات کی های مهمی هست که موقع کار با شل ها ممکنه به کارتون بیاد.مثلا من خیلی وقت ها پیش میاد دوست دارم موقع کار با بش از یه کلمه به خصوص به بعد رو کلا پاک کنم یا کل خط رو.اول از همه برای دیدن لیست کل هات کی ها دستور زیر رو وارد کنید:

stty -a

خروجی اون چیزی شبیه زیر هست:

intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;

و برای تغییر یه هات کی بخصوص، از الگوی زیر استفاده کنید:

stty hotkey_name replcaement_hotkey

مثلا اگه بخوام هاتکیِ اینترراپتِ ترمینال رو از Ctrl+C به Ctrl+E تغییر بدم:

stty intr '^E'

بعضی از هات کی های مهم رو خدمت تون عرض میکنم:
Ctrl + A:مکان نما رو به ابتدای سطر جاری می بره.
Ctrl + E:مکان نما رو به انتهای سطر جاری می بره.
Ctrl + L: هم چون دستور clear،صفحه را پاک میکند.
Ctrl + U:کل سطر جاری را پاک میکند.
Ctrl + R:امکان جستجو در بین تاریخچه شل را برایتان فراهم می آورد.
Ctrl + D:از شل جاری خارج می شود.
Ctrl + W:کلمه قبل از مکان نما رو پاک می کند.
Ctrl + K:تمام کلمات پس از مکان نما را تا انتهای خط جاری پاک می کند.
Alt + d:از جایی که مکان نما قرار دارد، شروع به پاک کردن کلمات تا انتهای خط میکند.
Alt + c:با فشردن این هاتکی،کلمات  captilaize  میشن.
Alt + u:کلمات رو uppercase میکنه.
Alt + l:کلمات رو lowercase میکنه.
برای دیدن جزییات بیشتر man page مربوط به stty را ببینید.

آخرین ویرایش توسط LinArcX (2017-02-22 22:22:09)

آفلاین

#29 2017-03-24 20:58:16

Arcush
Moderator
ثبت شده: 2015-09-15
ارسال ها: 1,390

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

سه تائی Ctrl+V+[tab] در ترمینال باعث میشه تا یک تب در ترمینال ایجاد بشه. بنابراین از دستور

$ sed -i -e 's/^/Ctrl+V+[tab]/' my_file.txt #Do_Ctrl+V+[tab]_by_hand

استفاده کنید تا در ابتدای تمام خطوط my_file.txt یک تب ایجاد بشه.

آخرین ویرایش توسط Arcush (2017-03-24 21:07:21)

آفلاین

#30 2017-04-27 12:47:14

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

اسم مستعار! یا همون alias
باعث میشه بتونین دستوری رو بسازید که به دستور دیگه ای اشاره میکنه، یا همون برچسپ زدن به دستور ها. مثلا:
در فایل

~/.bashrc

این قسمت رو بنویسید:

alias INSTALL='sudo pacman -S'

ذخیره کنید و shell رو ببندید. حالا هر بار که میخواین برنامه ای نصب کنین کافیه بزنین

INSTALL pkg_name

smile

آخرین ویرایش توسط mazhar (2017-06-29 10:32:30)

آفلاین

#31 2017-06-14 20:22:32

Arcush
Moderator
ثبت شده: 2015-09-15
ارسال ها: 1,390

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

$ cat *.jpg | ffmpeg -f image2pipe -r 1 -vcodec mjpeg -i - -vcodec libx264 out.mp4

بیایید تا با دستور بالا تمام فایل های با پسوند مثلا jpg رُ به یک فایل mp4 تبدیل کنیم.

این، یک نمونه از دستورات کاربردی و زیبای این سایت هست:
www.commandlinefu.com/

آفلاین

#32 2017-06-17 22:39:30

آرچیست
عضو
ثبت شده: 2017-06-12
ارسال ها: 3

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

با sshuttle بدون تنظیم پراکسی از اینترنت سایر سیستم ها استفاده کنید:

sshuttle --dns -r username@sshserver 0/0

موجود در مخازن آرچ!

آفلاین

#33 2017-06-29 10:26:46

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

لیست تمام نقاط دسترسی وصل شده به شبکه ی فعلی شما:

بسته ی arp-scan رو از مخازن اصلی نصب کنید. سپس:

# arp-scan --interface=<inerface-id> --localnet

که interface-id رو میشه با ip addr به دست آورد:

$ ip addr

1: lo: ...................................
   ...................................
   ........................
   .............................
2: interface-id: ....................
   ......................................................
   ............................
   ..........................................
   ............

آخرین ویرایش توسط mazhar (2017-06-29 10:27:41)

آفلاین

#34 2017-06-29 10:46:38

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

گاهی پیش میاد که بسته هایی رو میخوایم نصب کنیم ولی میرور هاش در دسترسمون نیست (دوستان عزیز برای امنیت خودمون اتصال بهشون رو منع کردن). در هر صورت استفاده از torsocks از نظر امنیتی توصیه نمیشه (اصلا کار هم نمیکنه، خودتونو به زحمت نندازید) پس باید از کانفیگ makepkg.conf قرار گرفته در etc متغیر DLAGENTS رو اینطور تغییر بدید:

DLAGENTS=('ftp::/usr/bin/curl --socks5-hostname localhost:9050 -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
          'http::/usr/bin/curl --socks5-hostname localhost:9050 -fLC - --retry 3 --retry-delay 3 -o %o %u'
          'https::/usr/bin/curl --socks5-hostname localhost:9050 -fLC - --retry 3 --retry-delay 3 -o %o %u'
          'rsync::/usr/bin/rsync --no-motd -z %u %o'
          'scp::/usr/bin/scp -C %u %o')

اصلیش اینطوریه:

DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o'
             'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
             'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
             'rsync::/usr/bin/rsync --no-motd -z %u %o'
             'scp::/usr/bin/scp -C %u %o')

واضحه که tor باید فعال و در حال اجرا باشه.

آخرین ویرایش توسط mazhar (2017-06-29 10:47:20)

آفلاین

#35 2017-06-30 15:33:04

LinArcX
عضو
ثبت شده: 2015-09-18
ارسال ها: 790

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

مشاهده man page در Browser:

man -Hfirefox <command>

یا

man --html=firefox <command>

آخرین ویرایش توسط LinArcX (2017-06-30 15:33:53)

آفلاین

#36 2017-07-02 09:56:41

آرچیست
عضو
ثبت شده: 2017-06-12
ارسال ها: 3

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

mazhar نوشته است که:

گاهی پیش میاد که بسته هایی رو میخوایم نصب کنیم ولی میرور هاش در دسترسمون نیست (دوستان عزیز برای امنیت خودمون اتصال بهشون رو منع کردن). در هر صورت استفاده از torsocks از نظر امنیتی توصیه نمیشه (اصلا کار هم نمیکنه، خودتونو به زحمت نندازید) پس باید از کانفیگ makepkg.conf قرار گرفته در etc متغیر DLAGENTS رو اینطور تغییر بدید:

DLAGENTS=('ftp::/usr/bin/curl --socks5-hostname localhost:9050 -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
          'http::/usr/bin/curl --socks5-hostname localhost:9050 -fLC - --retry 3 --retry-delay 3 -o %o %u'
          'https::/usr/bin/curl --socks5-hostname localhost:9050 -fLC - --retry 3 --retry-delay 3 -o %o %u'
          'rsync::/usr/bin/rsync --no-motd -z %u %o'
          'scp::/usr/bin/scp -C %u %o')

اصلیش اینطوریه:

DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o'
             'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
             'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
             'rsync::/usr/bin/rsync --no-motd -z %u %o'
             'scp::/usr/bin/scp -C %u %o')

واضحه که tor باید فعال و در حال اجرا باشه.

export all_proxy=socks5://localhost:9050
makepkg

اینجوری زندگی خیلی آسونتره

آفلاین

#37 2017-07-08 19:48:10

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

برای لذت بردن از man page ها حداقل کار اینه که رنگی باشن smile
اینا رو به .bashrc اضافه کنید:

export LESS_TERMCAP_mb=$'\e[0;31m'
export LESS_TERMCAP_md=$'\e[0;36m'
export LESS_TERMCAP_me=$'\e[0m'
export LESS_TERMCAP_se=$'\e[0m'
export LESS_TERMCAP_so=$'\e[7m'
export LESS_TERMCAP_ue=$'\e[0m'
export LESS_TERMCAP_us=$'\e[0;35m'

میتونید کد رنگ های ANSI رو جایگزین کنید تا رنگ دخواه رو داشته باشید.

آخرین ویرایش توسط mazhar (2017-07-12 10:13:25)

آفلاین

#38 2017-07-12 10:01:34

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

آرچیست نوشته است که:
export all_proxy=socks5://localhost:9050
makepkg

اینجوری زندگی خیلی آسونتره

ممنون از توجهتون smile اما متاسفانه این روش همیشه جوابگو نیست من تست کردم و نتیجه نداد. دلیل درست تر بودن تغییر فایل کانفیگ اینه که برای همون منظور ساخته شده اما متغیر محلی تلاشی برای اتصال به پراکسی هست.

آخرین ویرایش توسط mazhar (2017-07-12 10:05:19)

آفلاین

#39 2017-07-12 10:22:12

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

اگه به star wars علاقه دارید این دستور رو در ترمینالتون بزنید big_smile:

telnet towel.blinkenlights.nl

آفلاین

#40 2017-09-14 17:55:57

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

راه حل جالبی که برای لیست انجام کار ها جدیداً به کار بردم:
یه فایل متنی برای لیست در نظر بگیرید، مثلا:

~/TODO

سپس کاری کنید که هربار ترمینال باز میکنید این فایل رو cat کنه:

~/.bashrc
------------------------------------------------------------------------------------------
COLOR="\[$(tput setaf 5)\]"
RESET="\[$(tput sgr0)\]"
export PS1="${COLOR}★ \W${RESET} "
echo -en "\033[35m";cat /home/mazhar/TODO

حالا خیلی ساده یه alias برای تغییر فایل بسازید:

~/.bashrc
------------------------------------------------------------------------
alias todo='vim ~/TODO'

حالا خیلی راحت همون todo رو میزنید و ادیت میکنید.

آخرین ویرایش توسط mazhar (2017-09-14 17:56:44)

آفلاین

#41 2017-10-16 11:44:12

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

شرتکات های بش:

ctrl + c terminates the current process running in the foreground
ctrl + d terminates the input stream or sends the exit signal
ctrl + z suspends the current running process to background
ctrl + l clears the screen
ctrl + s stops all outputs in the current shell
ctrl + q resumes what the previous command stops
ctrl + a goes to the beginning of the line
ctrl + e goes to the end of the line
alt + b goes back one word
alt + f goes forward one word
ctrl + b goes back one character
ctrl + f goes forward one character
ctrl + xx toggles between the current porsition and the beginning of the line
ctrl + d deletes the current character
alt + d deletes all words from the current position to the end of line
ctrl + h deletes all words from the current position to the beginning of the line
alt + t swap the current word with previous one
ctrl + t swap the two characters before the cursor
ctrl + _ undo
ctrl + w cut the word before cursor and put in clipboard (local clipboard used in shell)
ctrl + k cut everything after the cursor and add to clipboard
ctrl + u cut everything before the cursor and add to clipboard
ctrl + y paste what you have put in clipboard just earlier
alt + u capitalize the next word and go to the end of it
alt + l uncapitalize the next word and go to the end of it
alt + c capitalize the word under the cursor and move to the next word (useful for apitalizing every first character of a sentence)
ctrl + p alternative for the up arrow
ctrl + n alternative for the down arrow
alt + r revert the changes you made in the history commands (bash is powerful, isn't it? :))
ctrl + r starting the reverse search in history
ctrl + o commit the search and execute that command
ctrl + g exit this reverse search

آخرین ویرایش توسط mazhar (2017-10-16 14:06:52)

آفلاین

#42 2017-11-01 22:26:26

Arcush
Moderator
ثبت شده: 2015-09-15
ارسال ها: 1,390

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

ساده ولی سریع:

$ cat first_music.mp3 second-music.mp3 > output_music.mp3

آفلاین

#43 2017-11-01 22:34:17

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

اعتراف میکنم به این میگن Awesome!

آفلاین

#44 2017-11-22 11:05:05

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 270

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

خیلی ساده ولی قشنگ، برای eject کردن removable media:

پیشفرض برای cdrom کار میکنه ولی میتونین device رو به عنوان پارامتر بهش بدین:

eject /dev/sdXY

آفلاین

#45 2018-01-31 11:26:55

Arcush
Moderator
ثبت شده: 2015-09-15
ارسال ها: 1,390

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

تصویر و صدابرداری از خروجیِ صفحهٔ نمایش:

$ ffmpeg -s 1359x767 -framerate 25 -f x11grab -i $DISPLAY -f pulse -ac 2 -i default output.mkv

اگر از alsa استفاده می کنید، کافی است که alsa را جایگزین pulse کنید.

همچنین ابعادی که در اینجا استفاده شده، هریکْ یکی کمتر از ابعاد خروجی صفحهٔ نمایش است تا بیشترین ابعاد صفحه مورد تصویربرداری قرار گیرد.

آخرین ویرایش توسط Arcush (2018-01-31 11:33:12)

آفلاین

#46 2018-03-04 23:02:43

Rezash13
عضو
از : همین دور اطراف :))
ثبت شده: 2018-02-03
ارسال ها: 6
وب سایت

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

ممکن یه دستور بنویسن و یادتون بره که اولش sudo بزارین و با این ارو مواجهه بشین

error: you cannot perform this operation unless you are root.

که بگه دسترسی روت نیاز دارم. کافی تو ترمینال بنویسد

sudo !!

تا دستوری که قبلی که نوشتین با دسترسی روت اجرا بشه و دیگه نیاز نباشه دستور قبلی ویرایش کنید

آفلاین

#47 2018-03-10 22:57:24

Arcush
Moderator
ثبت شده: 2015-09-15
ارسال ها: 1,390

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

برگرفته از اینجا: http://swift.siphos.be/linux_sea/shellscripting.html

تعداد اسکریپت ها و فایل های باینری در usr/bin/:

[esa@esa-pc bin]$ file * | grep -c 'ELF '
3001
[esa@esa-pc bin]$ file * | grep -c script
782

آفلاین

#48 2018-04-28 15:53:15

Arcush
Moderator
ثبت شده: 2015-09-15
ارسال ها: 1,390

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

این دستور تمام بسته هایی را که با pip نصب کردید آپگرید می کنه:

$ pip freeze --local | grep -v '^\-e' | cut -d = -f 1  | xargs -n1 pip install -U

البته الان دیگه به یقین رسیدم که برای کار با پایتون بویژه در حالتی که با بسته های زیادی مواجه هستید استفاده از محیط virtualenv بهترین انتخابه. چندتا از وضعیت هایی که براحتی می تونن اعصاب شما را خورد کنن:
۱- مقداری از بسته ها را با پکیج منیجر سیستم تون از ریپوهای سیستموتون نصب کرده باشید + مقداری از بسته ها را از سورس کامپایل کرده باشید + مقداری از بسته ها را با pip یا easy_install نصب کرده باشید.
۲- در توزیع هایی که pip فلگ user-- را *نیاز داره* از sudo استفاده کرده باشید. دراینصورت اون بسته ها برای کاربر روت نصب میشن. تاجائی که میشه از sudo بپرهیزید.

برای virtualenv اینجا را هم ببینید:
http://bbs.archusers.ir/viewtopic.php?id=623

ویرایش (پیوند):
https://stackoverflow.com/questions/272 … s-with-pip

آخرین ویرایش توسط Arcush (2018-04-28 15:58:55)

آفلاین

#49 2018-05-20 13:03:22

LinArcX
عضو
ثبت شده: 2015-09-18
ارسال ها: 790

پاسخ: ترفندهای کوچک ولی کاربردی در ترمینال

tesseract یه اِنجین متن بازِ ocr هست که توسط گوگل توسعه داده شده و احتمالا همونی هست که توی سرویس گوگل داکش هم داره استفاده میشه. انواع فرمت های عکس و حتی pdf هایی که به صورت تصویر تهیه شدن رو میشه به عنوان ورودی بهش پاس داد و ازش خروجیِ متنِ خالص گرفت.
بسته ش در مخازن آرچ موجود هست. فقط یادتون باشه به ازای هر زبانی باید تِرِین دیتاهای مربوط به اون زبان رو هم بگیرید. مثلا tesseract-data-eng  داده های ترین شده زبان انگلیسی هستند که احتمالا با تکنولوژی های یادگیری ماشین آموزش داده شدن تا کاراکترها رو از هم تمیز بدن. سپس به راحتی با دستور:

tesseract -l eng foo.png output 

خروجی رو به صورت متن بگیرید.
پ.ن: یکی از کاربرداش که خودم امروز ازش استفاده کردم این بود که داشتم یه کورس انگلیسی می دیدم که از روی یه سری اسلاید داشت توضیح میداد و خیلی دوست داشتم به اون اسلایدها دسترسی داشته باشم که متاسفانه نتونستم توی نت پیداشون کنم. با tesseract به راحتی متن رو از اسکرین شات هایی که گرفتم استخراج کردم.

آخرین ویرایش توسط LinArcX (2018-05-20 13:12:55)

آفلاین

پانوشت انجمن

پشتیبانی توسط تیم آرچ لینوکس ایران و نیرو گرفته با FluxBB