look [-bdf] [-t termchar] string [file] look [-f] string [file]
این برنامه که ریشهاش BSD هست، تمام خطوط پروندهی file را که با رشتهی string شروع میشوند،به خروجی میفرستد.
look [-bdf] [-t termchar] string [file] look [-f] string [file]
این برنامه که ریشهاش BSD هست، تمام خطوط پروندهی file را که با رشتهی string شروع میشوند،به خروجی میفرستد.
اگر بخوایم کوتاه و ساده در مورد سیگنالها صحبت کنیم،علامت هایی هستند که به پروسهها فرستاده میشوند و پروسه مقصد واکنشی نشان میدهد.بعضی از سیگنالها میتوانند توسط پروسهها نادیده گرفته شوند و بعضی نه. طریقهی handle کردن سیگنالها نیز با توجه به زبانی که استفاده میکنید میتواند متفاوت باشد. در پایتون اینکار از طریق ماژول signal انجام میشود و در سی از طریق پروندهی سرآمد signal.h و تابع signal.جدول زیر فهرستی از سیگنالهای متداول را نشان میدهد، برای دیدن فهرستی کامل از آنها باید kill -l را ببینید.
همه چیز از جایی شروع شد که میخواستم اول یک برنامه کنسولی (متنی) در سی شارپ لوگوی خودم را نشان بدهم. شروع به نوشتن یک کلاس کردم. و بعد رسما یک زبان اسکریپتی با خروجی گرافیکی به وجود آمد که اجازه می داد با استفاده از یک سری دستورات (کلمات کلیدی) و قرار دادن یک سری کارکتر به عنوان نماینده رنگها،تصویر رسم شود.
با این ترفند ساده و از طریق خط فرمان میتوانید فایل های حجیم را بسیار ساده و ظرف زمانی بسیار کمتر حذف کنید.خط فرمان را باز کرده و با توجه به سیستمعامل خود یکی از این دستورات را بزنید:
ویندوز/داس/امثالهم:
echo > filename del filenameیونیکس و شبه یونیکس(شامل گنو،لینوکس،بیاسدی ها،مک و ...):
> filename rm filename
اگر شما با خطفرمان لینوکس زیاد کار میکنید و شل شما بش است با ترفند هایی که در این مطلب آموزش داده میشود میتوانید سرعت و کارایی خود را زمانی که با خطفرمان کار میکنید افزایش دهید.
این دستور ساده تاریخچهی بش شما را به نمایش میگزارد:
history
خروجی چیزی مانند شکل زیر خواهد بود:
چند وقتی بود که این مخزن رو توی گیتهاب به لیست علاقهمندی ها اضافه کرده بودم، این دستورات برای راه اندازی یک وب سرور سادهی HTTP برای محتویات ایستا هستند(یعنی CGI و PHP و اینا پر!). این سرور ها همه به پورت ۸۰۰۰ گوش میدهند.
python3 -m http.server 8000
python -m SimpleHTTPServer 8000
ruby -rwebrick -e'WEBrick::HTTPServer.new(:Port => 8000, :DocumentRoot => Dir.pwd).start'
ruby -run -ehttpd . -p8000
php -S 127.0.0.1:8000
busybox httpd -p 8000
$Hso=New-Object Net.HttpListener;$Hso.Prefixes.Add("http://+:8000/");$Hso.Start();While ($Hso.IsListening){$HC=$Hso.GetContext();$HRes=$HC.Response;$HRes.Headers.Add("Content-Type","text/plain");$Buf=[Text.Encoding]::UTF8.GetBytes((GC (Join-Path $Pwd ($HC.Request).RawUrl)));$HRes.ContentLength64=$Buf.Length;$HRes.OutputStream.Write($Buf,0,$Buf.Length);$HRes.Close()};$Hso.Stop()
یا اگر خواستید با Command Prompt اجراش بکنید:
PowerShell.exe -nop -enc JABIAHMAbwA9AE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAEgAdAB0AHAATABpAHMAdABlAG4AZQByADsAJABIAHMAbwAuAFAAcgBlAGYAaQB4AGUAcwAuAEEAZABkACgAIgBoAHQAdABwADoALwAvACsAOgA4ADAAMAAwAC8AIgApADsAJABIAHMAbwAuAFMAdABhAHIAdAAoACkAOwBXAGgAaQBsAGUAIAAoACQASABzAG8ALgBJAHMATABpAHMAdABlAG4AaQBuAGcAKQB7ACQASABDAD0AJABIAHMAbwAuAEcAZQB0AEMAbwBuAHQAZQB4AHQAKAApADsAJABIAFIAZQBzAD0AJABIAEMALgBSAGUAcwBwAG8AbgBzAGUAOwAkAEgAUgBlAHMALgBIAGUAYQBkAGUAcgBzAC4AQQBkAGQAKAAiAEMAbwBuAHQAZQBuAHQALQBUAHkAcABlACIALAAiAHQAZQB4AHQALwBwAGwAYQBpAG4AIgApADsAJABCAHUAZgA9AFsAVABlAHgAdAAuAEUAbgBjAG8AZABpAG4AZwBdADoAOgBVAFQARgA4AC4ARwBlAHQAQgB5AHQAZQBzACgAKABHAEMAIAAoAEoAbwBpAG4ALQBQAGEAdABoACAAJABQAHcAZAAgACgAJABIAEMALgBSAGUAcQB1AGUAcwB0ACkALgBSAGEAdwBVAHIAbAApACkAKQA7ACQASABSAGUAcwAuAEMAbwBuAHQAZQBuAHQATABlAG4AZwB0AGgANgA0AD0AJABCAHUAZgAuAEwAZQBuAGcAdABoADsAJABIAFIAZQBzAC4ATwB1AHQAcAB1AHQAUwB0AHIAZQBhAG0ALgBXAHIAaQB0AGUAKAAkAEIAdQBmACwAMAAsACQAQgB1AGYALgBMAGUAbgBnAHQAaAApADsAJABIAFIAZQBzAC4AQwBsAG8AcwBlACgAKQB9ADsAJABIAHMAbwAuAFMAdABvAHAAKAApAA==
while true ; do nc -l 8000 < test.html ; done
نسخه پاورشل را خودم امتحان نکرده ام.
منبع و همچنین دستورات بیشتر برای اجرای وب سرور در گیتهاب گیست
nload یک برنامهی ساده و کم حجم تحت خطفرمان برای لینوکس، مک، فری بی اس دی، سولاریس و سایر (شبه) یونیکس ها هست که ترافیک شبکه را برای هر کارت شبکه مانیتور میکند، با کلید ها جهت دار میتوانید بین کارت شبکه ها جابجا بشوید.
با sshfs میتونید یک دایرکتوری در سرور رو روی یک دایرکتوری در رایانه محلی تون سوار بکنید(mount) و از این طریق به فایل های روی سرور دسترسی داشته باشید.
sshfs [user@]host:[dir] mountpoint [options]
از همون نام کاربری و رمز عبوری که برای ssh استفاده میکنید، برای sshfs نیز استفاده بکنید.بعد از سوار شدن میتوانید به فایل ها همانند فایل های محلی روی رایانه محلی، دسترسی داشته باشید.برای unmount کردن هم:
fusermount -u mountpoint
چند وقت پیش میخواستم چند تا اسکریپت پرل را تست بکنم و در حال نوشتن یک برنامه ساده با پرل بودم که مجبور شدم آپاچی را نصب و پیکرهبندی بکنم.
نکته: فکر نمیکنم لازم به ذکر باشه که باید دسترسی ریشه داشته باشید.
نکته: با توجه به اینکه من از اوبونتو ۱۶.۰۴ استفاده میکنم شاید نیاز باشه تا بعضی دستورات را با توجه به توزیع خود تغییر دهید.
نکته: اگر کمی باهوش(یا باتجربه؟) باشید میتوانید با توجه به این آموزش آپاچی را برای ویندوز و سایر شبه یونیکس ها هم پیکرهبندی بکنید.
برای اینکار اول آپاچی را نصب کنید(در توزیع شما ممکن است متفاوت باشد):
apt install apache2
حال آدرس localhost یا 127.0.0.1 را در مرورگر وارد بکنید، اگر صفحه It works ظاهر شد پس آپاچی به درستی نصب شده است. حال این دو خط را به فایل /etc/apache2/apache2.conf اضافه کنید:
AddHandler cgi-script .cgi .pl ServerName 127.0.0.1
حال این بلاک را پیدا کنید:
<Directory /var/www/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
و آنرا به این تغییر دهید:
<Directory /var/www/> Options Indexes FollowSymLinks ExecCGI AllowOverride None Require all granted </Directory>
حال باید ماژول cgi را با این دستور فعال بکنید:
a2enmod cgi
و سرویس مربوط به آپاچی را از نو راهاندازی بکنید(در توزیع شما ممکن است متفاوت باشد):
service apache2 restart
پایان!
با این روش شما می توانید هر چند فایلی را که می خواهید به عکس ضمیمه کنید و عکس آسیب نبیند و بدون نیاز به همراه داشتن فایل اضافه تری از خود عکس فایل ها را دوباره استخراج کنید. علاوه بر این ها می توانید در این روش از فایل های خود محافظت نیز بکنید.