溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux—刪除文本、文件中的空行

發(fā)布時間:2020-06-23 18:16:58 來源:網(wǎng)絡(luò) 閱讀:1039 作者:wenzhongxiang 欄目:安全技術(shù)

刪除文本、文件中的空行

實驗描述:

可同時處理一個或多個文件;

要求在用?sed?刪除空行之前先核實文件是否存在;

sed的輸出被導入一個文件名中含有$?$的臨時文件,最后將臨時文件移回原來的文件中;

使用shift命令取得所有的文件名,用while循環(huán)逐個處理所有的文件,直至處理完為止;

可以使用del.lines?--help獲得一個簡短的幫助信息。

實驗過程:

1:編寫一個腳本,名為del.lines:

截圖如下:

Linux—刪除文本、文件中的空行

內(nèi)容如下:

#!/bin/bash

#?Script?takes?filename(s)?and?deletes?all?blank?lines.

TEMP_F="/tmp/del.lines.$$"

usage()

{

echo?"Usage:$0?file?[file...]"

echo?"try?$0?-help?for?more?info"

exit?1

}

if?[?$#?-eq?0?]?;

then

usage

fi

FILES=$1

While?[?$#?-gt?0?]

do

echo?"...$1"

case?$1?in

--help)

echo?"Use?this?script?to?delete?all?blank?lines?from?a?text?file(s)"

exit?0

;;

*)

FILE_NAME=$1

If?[?-f?$1?]

then

sed?'/^$/d'?$FILE_NAME?>?$TEMP_F

mv?$TEMP_F?$FILE_NAME

else

echo?"$0?cannot?find?this?file:?$1"

fi

shift

;;

esac

done

2.保存腳本并增加執(zhí)行權(quán)限:?chmod?+x?del.lines,執(zhí)行后腳本提示尋幫助:

Linux—刪除文本、文件中的空行

3.?為了驗證腳本執(zhí)行效果:

添加兩個含有空行的無用數(shù)據(jù)腳本文件:

Linux—刪除文本、文件中的空行

文件內(nèi)容截圖如下:

Linux—刪除文本、文件中的空行Linux—刪除文本、文件中的空行

4.?執(zhí)行腳本并驗證效果:

Linux—刪除文本、文件中的空行

注解:

  • basename命令能夠從路徑中分離出文件名。通常用于shell腳本中

  • shift語句用于遷移位置變量,將?$1~$9?依次向左傳遞

eg:

若當前腳本程序獲得的位置變量如下:

$1=file1、$2=file2、$3=file3、$4=file4

則執(zhí)行一次shift命令后,各位置變量為:

$1=file2、$2=file3、$3=file4

再次執(zhí)行shift命令后,各位置變量為:

$1=file3、$2=file4

.?.?.

5.?根據(jù)實際環(huán)境,進行相應(yīng)的腳本修改,以便為生產(chǎn)環(huán)境服務(wù)。

歡迎關(guān)注微信公眾號:小溫研習社

Linux—刪除文本、文件中的空行

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI