89

JavaScript ファイルの圧縮を行っていますが、ファイルに文字が含まれているとコンプレッサーが不平を言っています。

これらの文字を検索して削除するにはどうすればよいですか?

4

13 に答える 13

195

vimを使用して簡単に削除できます。手順は次のとおりです。

1) 端末で、vim を使用してファイルを開きます。

vim file_name

2) すべてのBOM文字を削除します。

:set nobomb

3) ファイルを保存します。

:wq
于 2013-02-28T14:11:04.413 に答える
31

これらの文字を削除する別の方法 - Vimを使用:

vim -b ファイル名

これらの「隠れた」文字が表示され ( <feff>)、削除できるようになりました。

于 2014-11-12T16:36:42.477 に答える
24

以前の回答に感謝します。念のため sed(1) バリアントを次に示します。

sed '1s/^\xEF\xBB\xBF//'
于 2013-04-23T20:32:48.653 に答える
18
perl -pi~ -CSD -e 's/^\x{fffe}//' file1.js path/to/file2.js

ファイルに他の utf-8 があるとツールが壊れると思いますが、そうでない場合は、おそらくこの回避策が役立つでしょう。(未テスト...)

編集-CSDtchristのコメントに従って、オプションを追加しました。

于 2011-09-04T11:47:44.460 に答える
6

tailを使用する方が簡単かもしれません:

tail --bytes=+4 filename > new_filename
于 2013-11-26T05:53:40.870 に答える
3

@tripleeeのソリューションは私にはうまくいきませんでした。しかし、ファイルエンコーディングをASCIIに変更し、再びUTF-8に変更すると、うまくいきました:-)

于 2012-04-03T15:21:08.393 に答える
1

Sublime Textでは、 Highlighter パッケージをインストールしてから、ユーザー設定で正規表現をカスタマイズできます。

ここで、プロパティ\uFEFFの最後に追加しました。highlighter_regex

{
    "highlighter_enabled": true,
    "highlighter_regex": "(\t+ +)|( +\t+)|[\u2026\u2018\u2019\u201c\u201d\u2013\u2014\uFEFF]|[\t ]+$",
    "highlighter_scope_name": "invalid",
    "highlighter_max_file_size": 1048576,
    "highlighter_delay": 3000
}

デフォルトのパッケージ設定を上書きするには、ファイルを次の場所に配置します。

~/.config/sublime-text-3/Packages/User/highlighter.sublime-settings

于 2015-01-09T23:48:02.207 に答える