我正在想出如何將這個字符替換爲「< 85>」的新行(請僅將其視爲一個字符 - 我認爲這是一個不可打印的字符)。如何將<85>更換爲bash腳本中的新行
我想這一個在我的腳本:
cat file | awk '{gsub(」<85>」,RS);print}' > /tmp/file.txt
,但沒有奏效。
我希望有人能幫忙。
謝謝。
我正在想出如何將這個字符替換爲「< 85>」的新行(請僅將其視爲一個字符 - 我認爲這是一個不可打印的字符)。如何將<85>更換爲bash腳本中的新行
我想這一個在我的腳本:
cat file | awk '{gsub(」<85>」,RS);print}' > /tmp/file.txt
,但沒有奏效。
我希望有人能幫忙。
謝謝。
tr '\205' '\n' <file > file.txt
tr
是音譯命令;它將一個字符轉換爲另一個字符(或刪除它,或...)。的tr
在Mac OS X版本不承認十六進制轉義,所以你要使用八進制和八進制205是十六進制85
我假設該文件包含一個單字節'\x85'
,而不是某種組合表示爲<85>
的字節。 tr
不適合識別需要音譯的多字節序列。
隨着sed
:sed -e $'s/\302\205/\\n/' file > file.txt
或者awk
:awk '{gsub("\302\205","\n")}7'
的神奇這裏是轉換<85>
字符八進制代碼點。
我在文件上使用了hexdump -b
我手動將該字符插入。
如果這是實際的代碼,那麼你錯過了一個括號,並且你沒有使用正常的雙引號字符。 – ooga 2014-10-30 01:48:35