shell技巧分享(六)

這是一個系列文章,主要分享shell(部分功能僅適用于bash)的使用建議和技巧,每次分享3點,希望你能有所收獲。

1 從文件中查詢特定字符串

  • 查詢目錄下所有文件
$ grep -R -n "facebook" demo/
demo/python-tips-3.py:24:#     'facebook': 'https://www.facebook.com/',
demo/python-tips-3.py:27:# print url_dict.get('facebook', 'https://www.google.com/')
demo/python-tips-3.py:32:# https://www.facebook.com/
demo/python-tips-3.py:37:# print url_dict['facebook']
demo/python-tips-3.py:43:# https://www.facebook.com/

示例中查詢demo目錄下所有包含字符串facebook的文件,-n選項是為了打印匹配行的行號,-R選項是為了遞歸查詢目錄下所有文件。

  • 查詢指定文件
$ grep -n "Failed" boot.log
203:[FAILED] Failed to start Ipmievd Daemon.
222:[FAILED] Failed to start LSB: Bring up/down networking.
252:[FAILED] Failed to start Crash recovery kernel arming.

示例中查詢boot.log文件是否包含字符串Failed,-n選項是為了打印匹配行的行號。

2 查詢目錄或文件

  • 查詢目錄
$ find ./python_practice/ -type d -name "*demo*"
./python_practice/demo
./python_practice/fluent_python_demo

示例中查詢python_practice目錄下,名字包含字符串demo的所有目錄。-type d指定查詢類型為目錄,-name指定名稱包含字符串demo,星號(*)是通配符,表示任意字符。

  • 查詢文件
$ find ./python_practice/ -type f -name "*tips*"
./python_practice/demo/python-tips-1.py
./python_practice/demo/python-tips-10.py
./python_practice/demo/python-tips-2.py
./python_practice/demo/python-tips-3.py
./python_practice/demo/python-tips-4.py
./python_practice/demo/python-tips-6.py
./python_practice/demo/python-tips-7.py
./python_practice/demo/python-tips-9.py

示例中查詢python_practice目錄下,名字包含字符串tips的所有文件。-type f指定查詢類型為文件,-name指定名稱包含字符串tips,星號(*)是通配符,表示任意字符。

3 查看機器ip

$ alias ip='ifconfig | grep -o "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}" | grep -v -E 255\|127'
$ ip
172.17.0.1
192.168.14.10
192.168.122.1

linux一般通過ifconfig命令查看機器ip,但是如果機器有多塊網(wǎng)卡,從ifconfig的輸出信息中不容易找到所有ip。借助alias命令,定義一個新命令ip,可以快速查看機器的ip。示例中,-o選項是為了只打印匹配的字符串,-v選項反向匹配,即不匹配指定的字符串,去除包含數(shù)字255和127的ip,-E選項是為了使用擴展的正則表達式。由示例中可以看到,通過新命令ip查詢機器ip時,輸出信息更易讀?;蛘咧苯訄?zhí)行hostname -i命令,也可以查看當(dāng)前機器使用的ip,如下:

$ hostname -i
192.168.14.10
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,568評論 19 139
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數(shù)據(jù)革命閱讀 13,243評論 2 33
  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,714評論 0 5
  • 本文參加#感悟三下鄉(xiāng),青春筑夢行#活動,本人承諾,文章內(nèi)容為原創(chuàng),且未在其他平臺發(fā)表過。 伴隨著緊張的期末考試的結(jié)...
    孩子說love閱讀 258評論 0 1
  • 最近看到一篇傳播甚廣的文章,題目是《這個社會在懲罰不讀書的人》,文章寫的是一位香港富豪參加真人秀節(jié)目后的體會,話說...
    拂塵記閱讀 1,357評論 4 3

友情鏈接更多精彩內(nèi)容