在bash
中,有多種將文字附加到檔案的方法。
要將文字附加到檔案,您需要對其具有寫許可權。 否則,您將收到乙個被拒絕的許可權錯誤。
重定向允許您捕獲命令的輸出,並將其作為輸入傳送到另乙個命令或檔案。 重定向運算子將輸出追加到給定檔案。
您可以使用許多命令將文字列印到標準輸出並將其重定向到檔案,其中echo
和printf
是最常用的命令。
若要將文字附加到檔案,請在重定向操作符後指定檔名:
echo "this is a new line" >> file.txt
當與-e
選項一起使用時,echo
命令解釋反斜槓轉義字元,如換行\n
:
echo -e "this is a new line \nthis is another new line" >> file.txt
如果你想生成更複雜的輸出,可以使用printf
命令來指定輸出的格式:
printf "hello, i'm %s.\n" $user >> file.txt
另一種將文字附加到檔案的方法是使用 here 文件(heredoc)。 它是一種重定向型別,允許您將多行輸入傳遞給命令。
例如,您可以將內容傳遞給cat
命令,並將其附加到檔案中:
cat « eof » file.txt the current working directory is: $pwd you are logged in as: $(whoami) eof
cat filename > file.txt
你可以將任何命令的輸出附加到檔案中:
date +"year: %y, month: %m, day: %d" >> file.txt
當使用重定向附加到檔案時,請注意不要使用操作符覆蓋重要的現有檔案。
tee
是 linux 中的命令列實用程式,它從標準輸入讀取資料,並同時寫入標準輸出和乙個或多個檔案。
echo "this is a new line" | tee -a file.txt
如果您不希望tee
寫入標準輸出,可以將其重定向到 /dev/null:
echo "this is a new line" | tee -a file.txt >/dev/null
使用 tee 命令優於操作符的優點是,tee 允許您將文字一次追加到多個檔案,並將其他使用者擁有的檔案與 sudo 一起寫入。
要將文字附加到沒有寫許可權的檔案,請在 tee 之前預置 sudo,如下所示:
echo "this is a new line" | sudo tee -a file.txt
tee 接收 echo 命令的輸出,提高 sudo 許可權,並寫入檔案。
要將文字附加到多個檔案,請將這些檔案指定為 tee 命令的引數:
echo "this is a new line" | tee -a file1.txt file2.txt file3.txt
在 linux 中,要將文字附加到檔案中,可以使用重定向操作符「>」或 tee 命令。 Linux常用命令總結 文字過濾
查詢目錄下的所有檔案中是否含有某個字串 find xargs grep ri ibm 查詢目錄下的所有檔案中是否含有某個字串,並且只列印出檔名 find xargs grep ri ibm l c 測試檔案是否已經排序 m 合併兩個排序檔案 u 刪除所有同樣行 o 儲存sort結果的輸出檔名 t 域...
Linux 常用命令 文字檢視篇
linux 常用命令 文字檢視篇 前言linux常用命令中,除了cat還有很多其他用於文字檢視的命令。本文將簡單介紹一下這些文字檢視的命令。全文本顯示 cat cat可能是常用的乙個文字檢視命令了,使用方法也很簡單 cat file 全文本顯示在終端 cat n file 顯示全文本,並顯示行號 另...
Linux 常用命令 文字檢視篇
linux常用命令中,除了cat還有很多其他用於文字檢視的命令。本文將簡單介紹一下這些文字檢視的命令。cat可能是常用的乙個文字檢視命令了,使用方法也很簡單 cat file 全文本顯示在終端 cat n file 顯示全文本,並顯示行號 另外,cat也可用作合併檔案 cat file1 file2...