[20210819]給檔案內容編行號.txt
[20210819]給檔案內容編行號.txt
--//昨天在小區裡被一位老者攔下,請求處理一個小問題,給一個檔案內容編行號。
--//實際上就是隨身碟裡面有一堆MP3檔案,使用MP3播放器時,只要輸入數字就能播放對應歌曲。
--//這個問題對於我很簡單,不過麻煩的是對方機器是windows XP環境,沒有nl,cat之類的命令。
--//上網安裝unxutils包,安裝後執行如下:
nl mp3.txt > mp3a.txt
cat -n mp3.txt> mp3a.txt
--//不過對方測試按對應數字播放的歌曲對應不上,我估計他可能往隨身碟新增MP3檔案,導致順序發生變化。
--//重新生成後再編排,執行如下:
dir /s/b *.mp3 | nl > mp3a.txt
--//再次測試,問題搞定。回家後上網查詢到如下連結:
https://www.cnblogs.com/kerrycode/p/12781340.html =>Linux shell中如何給文字加上行號呢
--//awk 可以執行如下:
$ awk '{ print FNR " " $0}' redo_anly_script.sql
--//sed呢?我自己以前寫過:
[20201202]sed加行號.txt
--//連結提供一些加行號的方法:http://www.itpub.net/thread-2140068-1-1.html
--//想使用sed實現,上網看了一下:
R:\>cat a.txt
this is a test 1
this is a test 2
this is a test 3
this is a test 4
R:\> sed "=" a.txt | sed "N;s/\n/ /"
1 this is a test 1
2 this is a test 2
3 this is a test 3
4 this is a test 4
--//有點麻煩。透過例子展開分析。
D:\>c:\windows\system32\echo 111\n222\n333\n
111
222
333
D:\>c:\windows\system32\echo 111\n222\n333\n | sed =
1
111
2
222
3
333
4
--//等號實際上輸出行號,但是出現換行。
D:\>c:\windows\system32\echo 111\n222\n333 | sed = | paste -d" " - -
1 111
2 222
3 333
--//sed "N;s/\n/ /" ,這裡分成2個命令,N是兩行連線起來;s/\n/ /替換中間的\n使用空格。這類的命令不常用,基本記不住。
--//在vim下如何完成呢?vim下有一個外掛Inc,我的機器已經安裝這個外掛:
: help Inc
:[line1,line2]Inc [s<number>] [i<number>] [r<number>] [w<number>] [h] [o] [p<regexp>] [w<number>] [c]
STARTING [s<number>]: to change the starting value
(default: 0)
INCREMENT [i<number>]: to increase the value by this amount between matches
(default: 1)
REPEAT [r<number>]: to increase the value after <number> matches
(default: 1)
WIDTH [w<number>]: to align all the numbers to the right with the given width
(default: 4)
FILLER [f<char>]: to align numbers to the right, use the given character
HEX [h]: to use a hexadecimal base
OCTAL [o]: to use an octal base
PATTERN [p<regexp>]: if not using w parameter:
to replace the pattern
if using w parameter:
to search the line that matches the pattern and change a specific word
NOTE: with regexp be careful to use \ before spaces and \\ to place a literal \
CONFIRM [c] : to confirm each substitution; one to confirm before, two to confirm before AND after.
(default: not active)
NOTE: The default values can be changed.
--//看了一下例子很簡單,執行如下:
:%s/^/@ /
:%Inc s1 i1 w4
--//當然應該還有許多方法,我在自己cygwin下測試:
$ paste -d" " <(seq $(wc -l <aa.txt)) <( cat aa.txt)
1 altair:x:1001:1001:Altair Ibn La Ahad,,,,:/home/altair:/bin/bash
2 bind:x:120:132::/var/cache/bind:/bin/false
3 dnsmasq:x:121:65534:dnsmasq,,,:/var/lib/misc:/bin/false
4 mysql:x:115:129:MySQL Server,,,:/nonexistent:/bin/false
5 postfix:x:105:126::/var/spool/postfix:/bin/false
6 raghu:x:1000:1000:raghu,,,:/home/raghu:/bin/bash
7 smmsp:x:119:131:Mail Submission Program,,,:/var/lib/sendmail:/bin/false
8 smmta:x:118:130:Mail Transfer Agent,,,:/var/lib/sendmail:/bin/false
9 sshd:x:117:65534::/var/run/sshd:/usr/sbin/nologin
10 statd:x:116:65534::/var/lib/nfs:/bin/false
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2787888/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- node中給檔案追加內容
- java檔案相關(檔案追加內容、檔案內容清空、檔案內容讀取)Java
- 如何編輯PDF檔案的內容?
- 檢視檔案內容時,附加行號
- Awk給檔案中的行前後新增內容
- LIUNUX如何擷取txt檔案中的內容,並建立新檔案UX
- python中修改檔案行內容Python
- Java對txt檔案內容的增刪該查操作Java
- 根據編號展開內容
- pdf檔案內容怎麼修改 pdf怎麼免費編輯修改內容
- PDF編輯器怎麼用?如何編輯PDF檔案內容
- PDF文字怎麼編輯?怎麼編輯PDF檔案內容
- 檔案內容拷貝
- Oracle 控制檔案內容Oracle
- 檔案內容比較
- vim內替換檔案內容
- 反射-通過反射執行配置檔案內容反射
- 檔案內容對比工具
- C#分割檔案內容C#
- git檢視檔案內容Git
- properties檔案內容亂碼
- Linux檔案內容操作Linux
- 檢視控制檔案內容
- dump 轉儲檔案內容
- 提取rpm檔案內容
- 使用ln同步檔案內容,支援忽略檔案
- Linux給檔案內容每行指定字元資料脫敏替換Linux字元
- php怎麼知道一個檔案中有幾行內容PHP
- vite vue-cli 讀取檔案原始內容 使用base64內容的檔案ViteVue
- Liunx運維(三)-檔案過濾及內容編輯處理運維
- 實用解析dmp檔案內容
- 命令列技巧:分割檔案內容命令列
- php獲取xml檔案內容PHPXML
- mybatis讀取properties檔案內容MyBatis
- js直接列印pdf檔案內容JS
- PowerShell輸出內容到檔案
- 控制檔案包含哪些基本內容
- 檔案內容查詢命令(轉)