[問題] (已解)cut文句,結尾有隱藏的垃圾?
目前似乎找到原因了
我試著使用tr -d '\n'也沒用時
突然看到鳥哥的教學提到
tr也很常拿來移除^M這種windows的斷行資訊
因為我的A.txt是用windows的筆記本編輯的
然後直接丟進linux平台裡
所以我改成(教學上提到\r就是^M)
tr -d '\r',就有用了...
謝謝
********************************我是分隔星星*******************************
各位大大好
這問題 搞了小弟2天了 orz
假設我有個A.txt檔
檔案內容是
---
name: light
number: 123456789
address: 192.168.1.1
---
然後我有一隻程式名為WORK,是隻輸入number就會工作的程式
所以我開始寫一隻script
執行這隻script,這隻script會把A.txt的數字"123456789"挖出來存成變數
然後再執行叫起WORK把數字餵進去
了事
script的詳細寫法大概是這樣
---
getnumber='grep number: A.txt | cut d ':' f 2'
WORK getnumber
---
結果WORK告訴我,輸入的數字長度為10
這不合預期,讓我的WORK跑不順利
因為數字123456789,長度應該是9
我懷疑是cut值的時候,把檔案內的換行也存進變數getnumber了?
但我需要更多的測試才肯定他是否為換行(目前手上沒任何環境 囧)
(因為我有初步在"number: 123456789"的後面再補一個":",變"number: 123456789:"
就正常了,所以猜測是cut時以":"為分段,而最後補一個":",就正確切斷了)
如果真的是換行問題
在不改動A.txt與WORK的前題下(只可以改scropt)
我有辦法可以解決這個問題嗎?
還是可能是其他原因所導致的?
我初步的想法是
1.找到其他shell工具,可以更精準的把12345789給撈出來,不知大大們有無更好的建議
2.對getnumber做二度處理,例如再次以換行的基準,去把前面的數字切出來 囧
真的非常謝謝各位大大的分享
--
有種熟悉總在你心裡深處、眼光餘角出現
越是追求越是千里尋不著
日覆一日,漸漸的也就淡忘
實際卻如影隨行、無聲無息的埋藏在潛意識裡‧‧‧
也許夜深人靜時又會不經意的輕敲你心房
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.177.8.63
→
06/26 22:08, , 1F
06/26 22:08, 1F
→
06/26 22:23, , 2F
06/26 22:23, 2F
→
06/26 22:23, , 3F
06/26 22:23, 3F
兩位大大 抱歉 其實是我環境沒描述好
事實上那一行也不是number
其實是
modeswitch: -M 555342430800498200000000000010ff000000000000000000000000000000
然後我會把-M 555342430800498200000000000010ff000000000000000000000000000000
丟給程式去跑,-M是這個程式挾帶的參數,跟後面那串數字之間有一個空白是合法的
以及我自己手動下給程式 是OK的
直接寫死在script(不是用動態撈),也是ok的
所以在不斷測試下發現是 動態撈出來的東西 骨子裡跟我看到的不一樣
因為交給script自動跑,然後由script餵給程式
程式就會告訴我555342430800498200000000000010ff000000000000000000000000000000
這串的長度不對,多了一位
讓我百思不得其解
我執行script,被程式報錯(script會把自己執行的語句一句句秀出來)
而我直接把script執行的語句純粹在他秀在螢幕地方 copy 然後貼上 敲下enter 就過了...
一個看不到的字元讓長度變長
我只想到換行了 orz
因此順手最後在A.txt後面加個":",竟然就解掉
所以我合理懷疑是後面有換行被cut到了(雖然我覺得不太可能才是)
因為這種shell應該是盡可能很直覺才是,不會把換行也撈進來呀(?)
謝謝
推
06/26 22:23, , 4F
06/26 22:23, 4F
→
06/26 22:23, , 5F
06/26 22:23, 5F
tr -d "\n"??!! 直接刪掉這樣?
我明天試試看xddd
謝謝
→
06/27 03:08, , 6F
06/27 03:08, 6F
推
06/27 09:08, , 7F
06/27 09:08, 7F
所以樓上用 dpg --hex看輸出
是真的有把換行也丟出去了?
謝謝
推
06/27 10:58, , 8F
06/27 10:58, 8F
囧
※ 編輯: liwmewmew 來自: 111.250.184.228 (06/27 11:05)