新聞中心
隨著計算機技術的不斷發(fā)展,現(xiàn)代程序員越來越注重效率和工作流程的優(yōu)化。除了選擇高效的編程語言和開發(fā)工具外,還有一種被忽視的利器——Linux中的Ruby命令。Ruby是一種高級、面向對象的編程語言,它的主要優(yōu)點是簡單、靈活和易于學習和使用。在Linux操作系統(tǒng)中,Ruby命令可以快速執(zhí)行各種任務,從而提高編程效率。本文將探討如何。

成都創(chuàng)新互聯(lián)專注于企業(yè)營銷型網(wǎng)站建設、網(wǎng)站重做改版、湖口網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、成都h5網(wǎng)站建設、商城系統(tǒng)網(wǎng)站開發(fā)、集團公司官網(wǎng)建設、成都外貿(mào)網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為湖口等各大城市提供網(wǎng)站開發(fā)制作服務。
一、Ruby命令入門
Ruby命令可以通過終端來執(zhí)行,首先需要在Linux中安裝Ruby解釋器。安裝完成后,可以使用以下命令來檢驗是否成功:
“`
ruby -v
“`
該命令將顯示安裝的Ruby版本號,驗證安裝成功。
接下來,我們來了解幾個常用的Ruby命令:
1. irb(Interactive Ruby Shell)
irb命令是一個交互式的Ruby解釋器,它提供了一個快速的開發(fā)環(huán)境,可以用來測試Ruby代碼在終端上的執(zhí)行結果。使用以下命令啟動irb:
“`
irb
“`
啟動后,可以輸入任何有效的Ruby代碼并立即看到執(zhí)行結果。例如,可以輸入以下代碼:
“`
puts “Hello, world!”
“`
這將在終端上輸出“Hello, world!”。
2. ruby命令
ruby命令是使用Ruby編寫的程序的主要執(zhí)行方式??梢允褂靡韵旅顏磉\行一個Ruby程序:
“`
ruby program.rb
“`
其中“program.rb”表示要運行的Ruby程序的文件名。該命令將在終端上輸出程序的執(zhí)行結果。
3. gem命令
gem是Ruby的包管理器,它可以下載、安裝和管理Ruby程序包及其依賴關系??梢允褂靡韵旅顏聿榭匆寻惭b的Ruby程序包:
“`
gem list
“`
這將列出所有已安裝的Ruby程序包及其版本信息。
二、在Linux中利用Ruby進行高效編程
在Linux中,Ruby命令可以用來執(zhí)行各種任務,從文本處理到網(wǎng)絡編程,從而提高編程效率。
1. 文本處理
Ruby命令可以輕松處理和操作文本文件,例如:
– 查找文本文件中的特定行:
“`
ruby -ne ‘puts $_ if $_.include? “keyword”‘ file.txt
“`
其中“keyword”表示要查找的關鍵字,“file.txt”表示要處理的文本文件。該命令將輸出含有關鍵字的每一行。
– 統(tǒng)計文本文件中的行數(shù):
“`
ruby -e ‘puts File.readlines(“file.txt”).size’
“`
該命令將統(tǒng)計“file.txt”中的總行數(shù)并輸出。
2. 系統(tǒng)管理
Ruby命令可以用于系統(tǒng)管理任務,例如:
– 查看Linux系統(tǒng)的內(nèi)核版本:
“`
ruby -e ‘puts `uname -r`’
“`
該命令將輸出當前Linux系統(tǒng)的內(nèi)核版本。
– 關閉Linux系統(tǒng)的所有打開文件:
“`
ruby -e ‘Dir.entries(“/proc”).select{|f| f.to_i != 0}.each{|f| system(“cat /proc/#{f}/maps | grep -E “\(deleted\)|anon_inode” > /dev/null && system(“echo 1 > /proc/#{f}/fd/2”) }’
“`
該命令將關閉Linux系統(tǒng)中的所有打開文件。
3. 網(wǎng)絡編程
Ruby命令可以用于網(wǎng)絡編程,例如:
– 下載網(wǎng)頁并保存為文件:
“`
ruby -e ‘require “open-uri”; File.open(“output.html”, “wb”).write(open(“http://example.com”).read)’
“`
該命令將下載“http://example.com”網(wǎng)頁并保存為“output.html”文件。
– 監(jiān)聽端口并輸出收到的請求:
“`
ruby -rsocket -e ‘s = TCPServer.new(1234); loop { c = s.accept; puts c.read; c.close }’
“`
該命令將在本地主機的1234端口上監(jiān)聽,當收到請求后,將請求內(nèi)容輸出到終端。
本文介紹了如何。通過簡單地學習和使用Ruby命令,程序員可以輕松地處理文本文件、執(zhí)行系統(tǒng)管理任務和進行網(wǎng)絡編程。Ruby命令的主要優(yōu)點是靈活和易于學習和使用,程序員無需深入了解Ruby語言的所有細節(jié)即可充分利用其功能。在編程過程中,使用Linux中的Ruby命令可以提高編程效率,從而更快地開發(fā)出優(yōu)秀的軟件產(chǎn)品。
成都網(wǎng)站建設公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設、網(wǎng)站制作、網(wǎng)頁設計及定制高端網(wǎng)站建設服務!
命令行/終端下載指令大全(win + linux)
在我們滲透測試的過程中,通常會需要向目標主機傳送一些文件,來達到提權,維持控制等目的。因此當不方便進行直接傳輸時,同時目標主機是能有網(wǎng)絡連接的,那么此時就可以通過本地下載這種方法來達到文件傳輸?shù)哪康摹4似恼?,我會對互?lián)網(wǎng)上針對win與linux大部分的下載指令來做一個匯總,可能會有疏漏,但匯總的都是經(jīng)常會用的。
這款工具功能很豐富,可以充當某種功能完備的GUI下載管理器,它擁有一款理想的下載管理器所需要的所有功能,比如它可以恢復下載,可以下載多個文件,出現(xiàn)某個連接問題后,可以重新嘗試下載,你甚至可以管理更大的下載帶寬。
直接下載:
后臺下載:
如果互聯(lián)網(wǎng)連接出現(xiàn)中斷,恢復下載:
從某個密碼保護的ftp軟件庫下載文件:
Curl是另一種高效的下載工具,它可以用來上傳或下載文件,只要使用一個簡單的命令。它支持暫停和恢復下載程序包,并支持數(shù)量最多的Web協(xié)議,可預測下載完成還剩余多少時間,可通過進度條來顯示下載進度。它是所有Linux發(fā)行版的內(nèi)置工具。
直接下載:
借助-o選項,提供名稱,下載文件會以該名稱保存;如使用-O選項,文件就會以原始名稱保存。
這是wget的出色替代者,是一款輕量級下載實用工具。它實際上是個加速器,因為它打開了多路http連接,可下載獨立文件片段,因而文件下載起來更快速。
直接下載:
這是一種開源命令行下載加速器,支持多個端口,你可以使用更大帶寬來下載文件,是一款易于安裝、易于使用的工具。
直接下載:
Perl是一門很吊的語言,使用它基本可以實現(xiàn)任何事情,用它實現(xiàn)文件下載也很簡單。
執(zhí)行腳本文件是這樣:
Python也是很受歡迎的主流腳本語言,代碼清晰且簡潔:
Ruby是一個面對對象的語言,Metasploit框架就是用它來實現(xiàn)的,當然他也可以實現(xiàn)像下載文件這樣的小任務。
執(zhí)行腳本文件是這樣;
PHP作為一種服務端腳本,也可以實現(xiàn)下載文件這種功能。
執(zhí)行腳本文件是這樣:
一般情況下攻擊者使用FTP上傳文件需要很多交互的步驟,下面這個 bash 腳本,考慮到了交互的情況,可以直接執(zhí)行并不會產(chǎn)生交互動作。
當然根據(jù)實際情況也可以進入交互終端:
攻擊者的電腦上輸入:
這個命令會將file的內(nèi)容輸出到本地的1234端口中,然后不論誰連接此端口,file的內(nèi)容將會發(fā)送到連接過來的IP。
目標電腦上的命令:
這條命令將連接攻擊者的電腦,接受file內(nèi)容保存。
PowerShell 是一種winodws原生的腳本語言,對于熟練使用它的人來說,可以實現(xiàn)很多復雜的功能。
下面這兩條指令實現(xiàn)了從Internet網(wǎng)絡下載一個文件。
可以應用到: Windows Server 2023, Windows Server 2023 R2, Windows Server 2023 with SP1, Windows Server 2023 with SP2
文件下載并執(zhí)行如下:
在1998年Visual Basic最終標準在windows上確定。下面的代碼可以實現(xiàn)下載文件,雖然它的長度比Powershell長多了。
在windows中Cscript指令可以允許你執(zhí)行VBS腳本文件或者對script腳本做一些設置。在windows 7中這個指令并不是必須要用到。但是在windows XP中需要使用這條指令,如下所示:
在Windows Vista以及以后的版本中默認有FTP,可以使用以下命令運行:
上傳:
下載:
Bitsadmin是Windows命令行工具,用戶可以使用它來創(chuàng)建下載或上傳的任務。只能命令下載到指定路徑上,win7以上:
mshta
內(nèi)容如下:
依賴于WScript.shell這個組件:
Regsvr32命令用于注冊COM組件,是 Windows 系統(tǒng)提供的用來向系統(tǒng)注冊控件或者卸載控件的命令,以命令行方式運行。
WinXP及以上系統(tǒng)的regsvr32.exe在windowssystem32文件夾下;2023系統(tǒng)的regsvr32.exe在winntsystem32文件夾下。
test.data內(nèi)容:
還可以利用
生成sct文件:
Windows shares可以加載一個驅動器,然后用命令來復制文件。
加載遠程驅動:
當需要把一個exe文件放到目標計算機上時,Nishang可以使用PowerShell允許你把一個exe轉換成hex,然后把hex再轉換成原來的exe文件:
把exe轉成hex文件輸入:
打開evil.txt文件,復制內(nèi)容,然后通過RDP的剪貼板復制進目標計算機,把hex文件還原成exe文件輸入:
1.MSXSL.EXE
msxsl.exe是微軟用于命令行下處理XSL的一個程序,所以通過他,我們可以執(zhí)行JavaScript進而執(zhí)行系統(tǒng)命令。
2.pubprn.vbs在Windows 7以上版本存在一個名為PubPrn.vbs的微軟已簽名WSH腳本,其位于
3.esentutl.exe/extrac32.exe
4.desktopimgdownldr.exedesktopimgdownldr.exe 位于 Win10 的 system32 文件夾中,原本用于設置鎖定屏幕或桌面背景圖像的。
普通用戶可以用:
這樣來下載文件。
可以把C:ProgramData來改成一個普通用戶可寫的目錄。
下載的文件存放于:
管理員用戶會多寫一個注冊表項,所以管理員更好的命令是:
作者:肖洋肖恩、
原文鏈接:
Linux中對一行內(nèi)文字如何進行修改
sed是一個很好的文件處理工具,本身是一悉橡個管道命令,主要是以行為單位進行處理,可以將數(shù)據(jù)行進行替換、刪除、新增、選取等特定工作,下面先了解一下sed的用法
sed命令行格式為:
sed ‘command’ 輸入文本
常用選項:
n∶使用安靜(silent)模式。在一般 sed 的用法中,所有來自 STDIN的資料一般都會被列出到螢幕上。但如果加上 -n 參數(shù)后,則只有經(jīng)過sed 特殊處理的那一行(或者動作)才會被列出來。
e∶直接在指令列模式上進行 sed 的動作編輯;
f∶直接將 sed 的動作寫在一個檔案內(nèi), -f filename 則可以執(zhí)行 filename 內(nèi)的sed 動作;
r∶sed 的動作支援的是延伸型正規(guī)表示法的語法。(預設是基礎正規(guī)表示法語法)
i∶直接修改讀取者陸宴的檔案內(nèi)容,而不是由螢幕輸出。
常用命令:
a ∶新增, a 的后首銀面可以接字串,而這些字串會在新的一行出現(xiàn)(目前的下一行)~
c ∶取代, c 的后面可以接字串,這些字串可以取代 n1,n2 之間的行!
d ∶刪除,因為是刪除啊,所以 d 后面通常不接任何咚咚;
i ∶插入, i 的后面可以接字串,而這些字串會在新的一行出現(xiàn)(目前的上一行);
p ∶列印,亦即將某個選擇的資料印出。通常 p 會與參數(shù) sed -n 一起運作~
s ∶取代,可以直接進行取代的工作哩!通常這個 s 的動作可以搭配正規(guī)表示法!例如 1,20s/old/new/g 就是啦!
舉例:(假設我們有一文件名為ab)
刪除某行
# sed ‘1d’ ab#刪除之一行
# sed ‘$d’ ab#刪除最后一行
# sed ‘1,2d’ ab#刪除之一行到第二行
# sed ‘2,$d’ ab#刪除第二行到最后一行
顯示某行
. # sed -n ‘1p’ ab#顯示之一行
# sed -n ‘$p’ ab#顯示最后一行
# sed -n ‘1,2p’ ab#顯示之一行到第二行
# sed -n ‘2,$p’ ab#顯示第二行到最后一行
使用模式進行查詢
# sed -n ‘/ruby/p’ ab #查詢包括關鍵字ruby所在所有行
# sed -n ‘/\$/p’ ab#查詢包括關鍵字$所在所有行,使用反斜線\屏蔽特殊含義
增加一行或多行字符串
# cat ab
Hello!
ruby is me,welcome to my blog.
end
# sed ‘1a drink tea’ ab #之一行后增加字符串”drink tea”
Hello!
drink tea
ruby is me,welcome to my blog.
end
# sed ‘1,3a drink tea’ ab #之一行到第三行后增加字符串”drink tea”
Hello!
drink tea
ruby is me,welcome to my blog.
drink tea
end
drink tea
# sed ‘1a drink tea\nor coffee’ ab #之一行后增加多行,使用換行符\n
Hello!
drink tea
or coffee
ruby is me,welcome to my blog.
end
代替一行或多行
# sed ‘1c Hi’ ab #之一行代替為Hi
Hi
ruby is me,welcome to my blog.
end
# sed ‘1,2c Hi’ ab#之一行到第二行代替為Hi
Hi
end
替換一行中的某部分
格式:sed ‘s/要替換的字符串/新的字符串/g’ (要替換的字符串可以用正則表達式)
# sed -n ‘/ruby/p’ ab | sed ‘s/ruby/bird/g’ #替換ruby為bird
# sed -n ‘/ruby/p’ ab | sed ‘s/ruby//g’#刪除ruby
插入
# sed -i ‘$a bye’ ab#在文件ab中最后一行直接輸入”bye”
# cat ab
Hello!
ruby is me,welcome to my blog.
end
bye
刪除匹配行
sed -i ‘/匹配字符串/d’ filename (注:若匹配字符串是變量,則需要“”,而不是‘’。記得好像是)
替換匹配行中的某個字符串
sed -i ‘/匹配字符串/s/替換源字符串/替換目標字符串/g’ filename
用sed:
echo “/*123*/ABC” | sed ‘s#/\*.*\*/##’
由于*號在正則中有特殊含義(表示重復塵型前面一個字符0次或多次)滾散,要表示*字符本身,要在前派備猜面加\轉義。
linux ruby命令的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關于linux ruby命令,利用Linux中的Ruby命令進行高效編程,命令行/終端下載指令大全(win + linux),Linux中對一行內(nèi)文字如何進行修改的信息別忘了在本站進行查找喔。
香港服務器選創(chuàng)新互聯(lián),香港虛擬主機被稱為香港虛擬空間/香港網(wǎng)站空間,或者簡稱香港主機/香港空間。香港虛擬主機特點是免備案空間開通就用, 創(chuàng)新互聯(lián)香港主機精選cn2+bgp線路訪問快、穩(wěn)定!
本文標題:利用Linux中的Ruby命令進行高效編程(linuxruby命令)
網(wǎng)頁鏈接:http://www.5511xx.com/article/cdcchcj.html


咨詢
建站咨詢
