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

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


咨詢
建站咨詢
