1樓:匿名使用者
cat b.txt| xargs -i {} sed -i '/\<{}\>/d' a.txt
直接修改a.txt的話,那麼可以按以上命令.命令解釋一下:
顯示b.txt,並重定向給xargs,xargs將每行鎖定,然後每行執行刪除匹配該字的行.
{}鎖定的一行(一行一字), \《匹配字的開始, \>匹配字的結尾, d刪除匹配行, i直接修改檔案
缺點是直接將a.txt修改了.
如果不需要修改的話,那麼就可以參考樓下的命令
grep -v -w "\<`cat b.txt`\>" a.txt
命令解釋一下:
在a.txt中搜尋不匹配cat 命令逐行(一字一行)顯示的行.
-v 表示不匹配的, -w 按字匹配, \《匹配字的開始, \>匹配字的結尾
2樓:
用這條命令應該能達到你的目的,你試試
grep -v -w "\<`cat b.txt`\>" a.txt
另外,你的b.txt裡meiy哈爾濱,所以a.txt中的'哈爾濱 3'應該不會被刪除。
3樓:匿名使用者
#! /bin/sh
while read line
dogrep -v $ a.txt > a.txtdone < b.txt
使用shell指令碼刪除檔案中包含特定字元的行 ,字元在另一個txt檔案提取
4樓:
使用雙引號即可:
sed -i "/id=$var/d" 22.xml
shell中怎麼刪除檔案中指定行的
5樓:很多很多
1、刪除包含指定關鍵字的行:
sed -i '/hello/d' test_temp[root@host]$ cat test_tempworld
2、刪除指定行號的行
sed -i '2d' test_temp[root@host]$ cat test_tempworld
3、sed -i '1d' a.txt刪首行4、sed -i '$d' b.txt刪尾行5、sed -i 's/[ ]*//g' c.
txt刪空格6、sed -i '/^$/d' d.txt刪空行7、sed -i 『/love/d』 a.txt刪包含string的行。
擴充套件資料:shell 命令
常用命令:
cat 檔名 輸出檔案內容到基本輸出(螢幕 or 加》filename 到另一個檔案)
cb 格式化源**
chmod //change mode,改變檔案的許可權cp copy
date 當前的時間和日期
echo $abc 在變數賦值之後,只需在變數前面加一個$去引用.
lint 語法檢查程式
ls dir
man help
more type
du 檢視磁碟空間狀況
ps 檢視當前程序狀況
who 你的使用者名稱和終端型別
定義變數 name=abc? (bash/pdksh) || set name = abc (tcsh)
mkdir 建立目錄
rmdir 刪除目錄
cd 進入目錄
rm 刪除檔案
more 顯示檔案
echo 顯示指定文字
mv 改檔名 /移動檔案
pwd 顯示目錄路徑命令
6樓:釗鉼
1、sed -i '1d' a.txt刪首行
2、sed -i '$d' b.txt刪尾行
3、sed -i 's/[ ]*//g' c.txt刪空格
4、sed -i '/^$/d' d.txt刪空行
5、sed -i 『/^[0-9]*$/d' a.txt刪包含數字的行
6、sed -i 『1,2d』a.txt刪2行
7、sed -i 『/love/d』 a.txt刪包含string的行
在電腦科學中,shell俗稱殼(用來區別於核),是指「為使用者提供操作介面」的軟體(命令解析器)。它類似於dos下的command.com和後來的cmd.
exe。它接收使用者命令,然後呼叫相應的應用程式。
擴充套件資料:
基本上shell分兩大類:
一:圖形介面shell(graphical user inte***ce shell 即 gui shell)
例如:應用最為廣泛的 windows explorer (微軟的windows系列作業系統),還有也包括廣為人知的 linux shell,其中linux shell 包括 x window manager (blackbox和fluxbox),以及功能更強大的cde、gnome、kde、 xfce。
二:命令列式shell(command line inte***ce shell ,即cli shell)
例如:bash / sh / ksh / csh(unix/linux 系統)
(ms-dos系統)
cmd.exe/ 命令提示字元(windows nt 系統)
windows powershell(支援 .net framework 技術的 windows nt 系統)
傳統意義上的shell指的是命令列式的shell,以後如果不特別註明,shell是指命令列式的shell。
我有一個shell指令碼,想把輸出結果寫到另一個檔案中,請問指令碼應該怎麼新增命令?
7樓:我是幸福的懶豬
舉個例子:
echo "hello,world" >> b.txt 這是第一個命令的輸出
ifconfig >> b.txt 這是第二個命令的輸出>> 表示在檔案末尾追加
8樓:匿名使用者
輸出用『echo』啊!不懂你意思,1是標準輸出是預設的,寫不寫都一樣。
echo "hello,world" > b.txt
9樓:情又獨中
exec 1 是什麼意思,哪有這個命令?
10樓:天地缺雪
是不是你》號前後的空格沒打啊?依稀記得要空格的(以前弄過,有點忘記了)。
寫一個shell指令碼,從[a]和[b]中間的內容全部拷貝出來
11樓:匿名使用者
cat filename | sed -n '/\[a\]/,/\[b\]/p' | awk 'nr>2' >> config.txt
shell指令碼中如何跨指令碼呼叫其他指令碼中的函式
這個前提是在你指令碼執行過程中,其他指令碼也需要執行並呼叫,然後可以把函式放到環境變數中,再從指令碼中讀取環境變數 shell指令碼怎麼呼叫其他shell指令碼 在shell中要如何呼叫別的shell指令碼,或別的指令碼中的變數,函式呢?方法一 subscript.sh方法二 source subs...
LINUX程式設計中shell指令碼的問題
if gt 2 與 之間要有一個空格,與2之間也要有個空格,不能挨著。linux shell程式設計 shell 指令碼引數問題!10 關於引數傳遞 假我要獲取 home某目錄檔案某目錄我原先知道所需要先使用 ls l home 獲取 home目錄資訊。現需要ls l homels l filena...
linux 2 6的shell指令碼中如何kill掉 sleep程序
你是說找到系統中所有名字為sleep的程序id,並且殺死它們,是嗎?我沒有linux平臺測試,我使用的hp ux,下面的 你可能需要適當調整才可以使用。下面的命令可以找出系統中的所有程序 ps e 要查詢所有名稱為sleep的經常,有的系統可以給ps使用 n引數,例如 ps n sleep 但是通用...