linux命令补遗 - 4
生活随笔
收集整理的這篇文章主要介紹了
linux命令补遗 - 4
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1、部分行替換: 例如:將5到11行前面加上#(即注釋掉5到11行):sed -i '5,11s/^/#/g' Hello.java 去掉開頭的#號,在vi模式下使用:%s/^#//g
2、grep取上下行 cat? a.txt? |? grep -A1 saved?????? //取匹配行及其下一行 cat? a.txt? |? grep -B1 saved? ? ?? //取匹配行及其上一行 cat? a.txt? |? grep -1? saved? ? ?? //取匹配行及其上下一行 3、查看二進(jìn)制文件 $ vim dir 然后輸入":%!xxd"命令。如下: 會把二進(jìn)制文件的內(nèi)容轉(zhuǎn)換為十六進(jìn)制。 還可以用:":%!od"、":%!xxd -c N",N為數(shù)字,表示每行顯示的字節(jié)數(shù)。 4、拷貝是保留模式、權(quán)限、時間戳 -p ? ? same as --preserve=mode,ownership,timestamps 例:-p ? ? same as --preserve=mode,ownership,timestamps 5、vi快捷鍵[admin@inc-platform-133-132?~]$?echo?-e?"abc\n"? abc? ? [admin@inc-platform-133-132?~]$?echo?"abc\n"? abc\n? 【注意】注意echo?-e?"abc\n"的最后多輸出了一行(空行),也就是-e參數(shù)的效果,讓特殊字符生效 11、注意調(diào)試:bash -x的輸出 memcached_pid=`ps??--no-heading?-C?memcached?-f?--width?1000?|?grep?"$MEMCACHED_INSTALL_CTL"?|awk?'{print?$2}'? 當(dāng)$MEMCACHED_INSTALL_CTL未定義時,同樣可以執(zhí)行,所以會帶來執(zhí)行執(zhí)行和腳本中執(zhí)行的區(qū)別,注意調(diào)試。 12、輸出1到100:seq 1 100,常用于循環(huán)中: for?i?in?`seq?1?100`?? do? ????echo?$i? don? 13、yum卸載 查看安裝情況 #yum?list?|?grep?httpd? alibaba-httpd.x86_64???????????????????????2.0.63-17???????????????????installed? alibaba-httpd22.x86_64?????????????????????2.2.15-2????????????????????installed? alibaba-httpd.x86_64???????????????????????2.2.15-22???????????????????update???? alibaba-httpd-int.x86_64???????????????????2.0.61-17???????????????????update???? alibaba-httpd_module-img_private.x86_64????1.0-2???????????????????????update?? 卸載:yum remove #yum?remove?alibaba-httpd.x86_64?? 安裝:線上是安裝是alibaba-httpd.x86_64???????????????????????2.2.15-22?? yum?install?alibaba-httpd.x86_64? 14、vi中部分行替換:“:1,57s/^/#/g” 例子:將:將1到57行中的全部注釋,方法:":1,57s/^/#/g" 15、文件編碼方式轉(zhuǎn)換:iconv -f:from -t:to 將文件從gbk編碼轉(zhuǎn)換成utf8編碼:iconv -f gbk -t utf8 filename 16、條件判斷參數(shù)查詢:man test 使用man test可以查看if中參數(shù)的選擇,例如:-z:判斷字符串長度是否為0 17、分析apache的訪問日志 例:以"為分隔符,查看refer(引用當(dāng)前js的url) awk -F "\"" '{print $4}' apache_access.log | more 18、查看文件的最后修改時間 -r, --reference=FILE display the last modification time of FILE 例子: [admin@hz-unicorn1?2]$?date?-r?apache_access.log.2.tar.gz?? Wed?Nov?16?02:55:06?PST?2011? kejuwang@kejuwang-desktop:~/work/unicorn-docs$?date?-d"2010/09/02?13:00:00"?+"%Y%m%d%H%M"? 201009021300? 將文件的最后修改時間進(jìn)行格式化:"`date?-r?unicorn-accesslog-backup.sh`" date?-d"`date?-r?unicorn-accesslog-backup.sh`"?+"%Y-%m-%d"? 正確的格式化文件最后修改時間: kejuwang@kejuwang-desktop:~/work/unicorn-docs$?date?-r?apache_access.log?+"%Y_%m_%d?%H:%M:%S"? 2011_11_16?15:59:59? 19、去除VI中的某些文字的存在的下劃線 : syntax off? 20、yum安裝與卸載軟件 yum list yum install 卸載:yum erase 21、統(tǒng)計目錄下所有文件以及文件夾大小和總大小 du -shc * 22、wget注意事項 (1)wget在訪問url的時候,后面的url最好放在雙引號之中,因為經(jīng)常有url中包含&符號,命令行會將url截斷,認(rèn)為&為后臺執(zhí)行。 例如:wget -c "http://www.baidu.com/s?tn=baiduhome_pg&bs=request+getHeader+User-Agent+%BF%D5&f=8&rsv_bp=1&rsv_spt=1&wd=request+getHeader+User-Agent+null&inputT=1013" 22、svn diff操作 svn diff?-r?newversion:oldversion ?path
svn diff?-r?1327:1326?mcsd_svc.php 23、tar解壓到制定目錄(條件:目錄需存在,且使用大寫的-C) tar zxvf hummock.server.db-2.3.1.tar.gz -C db? 24、為軟件打補丁 例如:gzip -cd php-5.2.6-fpm-0.5.9.diff.gz | patch -d php-5.2.6 -p1
2、grep取上下行 cat? a.txt? |? grep -A1 saved?????? //取匹配行及其下一行 cat? a.txt? |? grep -B1 saved? ? ?? //取匹配行及其上一行 cat? a.txt? |? grep -1? saved? ? ?? //取匹配行及其上下一行 3、查看二進(jìn)制文件 $ vim dir 然后輸入":%!xxd"命令。如下: 會把二進(jìn)制文件的內(nèi)容轉(zhuǎn)換為十六進(jìn)制。 還可以用:":%!od"、":%!xxd -c N",N為數(shù)字,表示每行顯示的字節(jié)數(shù)。 4、拷貝是保留模式、權(quán)限、時間戳 -p ? ? same as --preserve=mode,ownership,timestamps 例:-p ? ? same as --preserve=mode,ownership,timestamps 5、vi快捷鍵
Ctrl + a:去往首行
Ctrl + e: 去往末行
Alt + f: 前進(jìn)一個字
?? ?Alt + b: 退后一個字? 6、yum安裝與卸載 按照:yum install ... 卸載:yum remove ... 7、解壓到指定目錄:-d 例子:unzip spring-framework-3.1.0.M2-with-docs.zip ?-d /home/kejuwang/works/opensource/spring 8、正確和錯誤輸出:?> exp.out 2>&1 bash -x ./startws.sh > exp.out 2>&1 9、查看進(jìn)程,去除頭部 ps ?--no-heading -C java -f --width 1000 10、echo -e echo -e 后一般會接參數(shù), -e 若參數(shù)出現(xiàn)以下字符,則特別加以處理,而不會將它當(dāng)成一般 文字輸出:\a 發(fā)出警告聲;\b 刪除前一個字符;\c 最后不加上換行符號;\f 換行但光標(biāo)仍舊停留在原來的位置;\n 換行且光標(biāo)移至行首;\r 光標(biāo)移至行首,但不換行;\t 插入tab;\v 與\f相同;\\ 插入\字符;\nnn 插入nnn(八進(jìn)制)所代表的ASCII字符;svn diff?-r?1327:1326?mcsd_svc.php 23、tar解壓到制定目錄(條件:目錄需存在,且使用大寫的-C) tar zxvf hummock.server.db-2.3.1.tar.gz -C db? 24、為軟件打補丁 例如:gzip -cd php-5.2.6-fpm-0.5.9.diff.gz | patch -d php-5.2.6 -p1
轉(zhuǎn)載于:https://blog.51cto.com/tianya23/586185
總結(jié)
以上是生活随笔為你收集整理的linux命令补遗 - 4的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 恒大股权结构,许家印拥有59.84%的股
- 下一篇: 复制excel的表格怎么保持原来的大小(