*.bat
Windowsのスクリプトで2つのバイナリファイルを結合する必要があります。
どうすればそれを達成できますか?
type
はcat
の機能の一部のみを置き換えることができます(Windowsではバイナリファイルとテキストファイルが区別されているため)。
*.bat
Windowsのスクリプトで2つのバイナリファイルを結合する必要があります。
どうすればそれを達成できますか?
type
はcat
の機能の一部のみを置き換えることができます(Windowsではバイナリファイルとテキストファイルが区別されているため)。
回答:
Windows type
コマンドはUNIXと同様に機能しますcat
。
例1:
type file1 file2 > file3
同等です:
cat file1 file2 > file3
例2:
type *.vcf > all_in_one.vcf
このコマンドは、すべてのvcardを1つにマージします。
type file1 file2 > file3 2>NUL
次のcopy /b
ように使用できます:
copy /b file1+file2 destfile
type
コメントで概説されている明らかな問題を考えると、これは受け入れられた回答ではないことを私には奇妙です...
作業を行っているマシンを制御できる場合は、GnuWin32をインストールすることを強くお勧めします。「すべてダウンロード」して、wgetプログラムにすべてのパッケージを取得させます。その後、cat、grep、find、gzip、tar、less、その他数百にアクセスできます。
GnuWin32は、新しいWindowsボックスに最初にインストールするものの1つです。
恥知らずなPowerShellプラグイン(学習曲線が面倒なので、いつでも何かを教えることが役立つので)
Get-Content file1,file2
ノートtype
には、Get-コンテンツの別名である、あなたはより良いそれを好めばそう、あなたが書くことができます。
type file1,file2
type file1 file2 > dest
、cmdを使用してそれを試したところ、各プロセスは数秒で完了しました。
-Encoding UTF8
何も変更しませんでした。
Windows 10のRedstone 1リリースでは、WindowsはNTOSカーネル用の実際のLinuxサブシステムを追加しました。私はもともとそれがAndroidアプリをサポートすることを意図していたと思います、そしておそらくDockerタイプのシナリオ。MicrosoftはCanonicalと提携し、実際のネイティブbashシェルを追加しました。また、aptパッケージマネージャーを使用して、多くのUbuntuパッケージを取得できます。たとえば、Linuxボックスで行うように、apt-get gccを実行してGCCツールチェーンをインストールできます。
私が大学在学中にこのようなことがあったとしたら、Unixプログラミングの割り当てのほとんどをネイティブのWindows bashシェルで行うことができたと思います。
バッチスクリプトを使用する必要があり、ここにpythonがインストールされている場合は、バッチとpythonでのポリゴットの回答です。
1>2# : ^
'''
@echo off
python "%~nx0" " %~nx1" "%~nx2" "%~nx3"
exit /b
rem ^
'''
import sys
import os
sys.argv = [argv.strip() for argv in sys.argv]
if len(sys.argv) != 4:
sys.exit(1)
_, file_one, file_two, out_file = sys.argv
for file_name in [file_one, file_two]:
if not os.path.isfile(file_name):
print "Can't find: {0}".format(file_name)
sys.exit(1)
if os.path.isfile(out_file):
print "Output file exists and will be overwritten"
with open(out_file, "wb") as out:
with open(file_one, "rb") as f1:
out.write(f1.read())
with open(file_two, "rb") as f2:
out.write(f2.read())
join.batとして保存すると、次のようになります。
join.bat file_one.bin file_two.bin out_file.bin
インスピレーションを与えてくれたこの回答にも感謝します。
Linuxサーバーで分割されたtarアーカイブを再結合しようとします。
そして、私がtype
Windowsで使用cmd.exe
すると、ファイルが間違った順序で結合される原因になります(つまりtype
、最初にXXXX.ad、次にXXXX.ac、XXXX.aaなどが配置されることがあります)。
そこで、bat
GitHub https://github.com/sharkdp/batに、Windowsビルドがあり、コードの強調表示が改善されたツールが見つかりました。重要なことは、Windowsで正常に動作してtarアーカイブに再結合することです。
だから私はEOL文字を保持するためのアビリティーで同様の解決策を探していて、方法がないことを発見したので、私は自分の最善を尽くして自分のユーティリティを作りましたこれはWindows用のネイティブの猫の実行ファイルです-https :// mega。 nz /#!6AVgwQhL!qJ1sxx-tLtpBkPIUx__iQDGKAIfmb21GHLFerhNoaWk
Usage: cat file1 file2 file3 file4 -o output.txt
-o | Specifies the next arg is the output, we must use this rather than ">>" to preserve the line endings
私はそれをC#で構築されているので、sharp-catと呼んでいます。アンチウイルスで自由にスキャンしてください。ソースコードはリクエストに応じて提供されます。