❶ 如何使用grep篩選出含有A或者B字元的行
me@ubuntu:grep$cattest.txt
aa123
AA123
AABB123
BB123
me@ubuntu:grep$grep-e'AA'-e'BB'./test.txt
AA123
AABB123
BB123
❷ shell grep 的結果只取第一行
可以使用head -1 命令來只取grep到的數據的第一行。
例如一個文本文檔a.txt內容是:
北京是我們的首都
北京天安門坐落在中華人民共和國首都北京市的中心
我在北京天安門廣場吃炸雞
使用命令 cat a.txt |grep 北京 | head -n 1 可以只取到第一行的數據北京。
(2)grep過濾文件指定行擴展閱讀
Linux中head命令詳解:
head命令與tail命令用法相似,head命令用於查看文檔的開始指定數量的字元塊,默認顯示文檔的前 10 行,如果給定的文件不止一個,則在顯示的每個文件前面加一個文件名標題。
1、grep命令用法格式
head 【參數】【文件】
2、命令選項
-c, --bytes=[-]K k,顯示文檔開始的前k個位元組,-k,不顯示文檔結尾的最後 k 個位元組
-n, --lines=[-]K k,顯示文檔開始的前k行,-k,不顯示文檔結尾的最後 k 行
-q, --quiet, --silent 不顯示包含給定文件名的文件頭
-v, --verbose 總是顯示包含給定文件名的文件頭
--help 顯示此幫助信息並退出
--version 顯示版本信息並退出
3、實例
#顯示前5行
head -n 5 head.txt
#顯示前5個位元組
head -c 5 head.txt
❸ Linux:刪除某文件中的指定行,求解
可以用下面腳本的方法刪除某文件的指定行
#!/bin/sh
FILENAME=file.txt # 可換為$1
if [ ! -f file.txt ];then
echo "$FILENAME no found"
exit 1
fi
echo -n "INPUT SOME THING: "
read
if [ ! -z 」$REPLY「 ];then
INFO=$(grep $REPLY FILENAME)
if [ ! -z "$INFO" ] ; then
sed -i -e '/$REPLY/d' FILENAME #刪除只用這行就可以了
else
echo "沒有指定內容的信息"
exit 1
fi
else
echo "input some thing"
exit 1
fi
exit $?
1. ============》》》添加 用sed在文檔中間指定行後增加一行有時候我們會用腳本,來修改文檔,比如在文檔中增加一行或減少一行
echo "1";
echo "2";
echo "4";
echo "5";如上例子,想要在echo "2";後面加上一條echo "3";可以用如下命令sed -i '/echo \"2\";/a\echo \"3\";' test.sh
之所以用分號,是因為文本中本來就有。也就是說分號不是必須的!抽象出來就是: sed -i '/* /a*' filename
2. ============》》》刪除 sed 刪除文件中的一行內容Linux shell腳本 刪除文件中的一行內容
比如:在1.txt里有以下內容:
HELLO=1
NI=2
WORLD=3
I Love China.
Love all
....
如果是要刪除第三行:
sed -i '3d' 1.txt
如果刪除以Love開頭的行
sed -i '/^Love/d' 1.txt
刪除包含Love的行
sed -i '/Love/d' 1.txt
❹ 用grep怎麼過濾出文本中包含23個tab的行
^不知道你是想實現什麼目的,如果你是想只顯示配置文件中的以 # 號開頭的行,那就使用版 # grep ^# filename 如果是想顯示除權 # 號開頭的行的話呢,只需加個參數-v (-v 表示相反的過濾)就行了 # grep -v ^# filename
❺ linux中怎麼用grep提取同時滿足兩個條件的行
需要准備的材料抄分別是:電腦襲、linux連接工具。
1、首先連接上linux主機,進入命令行狀態。
❻ 利用grep,sed或awk命令如何過濾出test.txt文件中第二列中大於10的數
awk '{if(NR==n) $n=新數據;print $0}'
面命令n行數列數
的交線……) 空間有幾種距離?如何求距離?點與點,點與線
❼ 利用shell腳本如何提取一個文件中某一特定行和下面若干行的內容
1、在linux目錄/root下建立一個txt文件,內容如下,使用|豎線分割,作為我們的實版驗數據樣本。
❽ grep命令查找怎樣排除具體路徑下某個文件
find命令是根據文件的屬性進行查找,如文件名,文件大小,所內有者,所屬組,是否為空,訪問時間容,修改時間等。若跟據文件的內容進行查找,需使用grep命令。 說明: 1、find命令的一般形式為find [PATH] [option] [action] find命令部分選項說明:...
❾ grep怎麼取出某文本裡面的兩行: 比如:文本的內容為
用grep-E就可以搞定,如下是虛擬機上的驗證結果專
[root@屬localhost Desktop]# echo "<a> sajfasjf" >123.txt
[root@localhost Desktop]# echo "<b> yedrgsd" >>123.txt
[root@localhost Desktop]# echo "<c> jfamfoias" >>123.txt
[root@localhost Desktop]# echo "<d> 1242353425" >>123.txt
[root@localhost Desktop]# cat 123.txt
<a> sajfasjf
<b> yedrgsd
<c> jfamfoias
<d> 1242353425
[root@localhost Desktop]# grep -E '<a>|<b>' 123.txt >>temp.txt
[root@localhost Desktop]# cat temp.txt
<a> sajfasjf
<b> yedrgsd
[root@localhost Desktop]#
❿ Unix shell語言 我想從file中逐行讀取,使用awk分隔欄位,篩選含有指定標簽tag的行
還得看具體的需求,示例如下
awk'/^[[:space:]]*<DllLibName[>]/{print}'filename