sda*_*aau 5 scripting text-processing file-copy cat
我正在寻找某种我可以使用的命令,将多个文件复制/附加到一个文件中;但没有外壳重定向(我想尝试一下call_usermodehelper,在call_usermodehelper / call_usermodehelperpipe 用法中看到类似的问题- 堆栈内存溢出)。我知道我可以使用其他方式:
cat file1 file2 > file.merge
Run Code Online (Sandbox Code Playgroud)
...但这需要shell重定向。
到目前为止我的发现:
cat,因为它的默认标准输出输出不能被重新定义(例如,通过命令行参数)——除此之外,它是外壳重定向dd在单个调用中使用,因为它只能接受一个(并且只有一个)if=输入文件参数cp,因为它会单独处理多个文件,并且不能将它们全部“合并”到一个位置那么 - 是否有任何标准工具可以让我做类似(伪代码)的事情:
copytool -i file1 -i file2 -o file.merge
Run Code Online (Sandbox Code Playgroud)
...这样输出file.merge代表file2附加到file1内容?
Sté*_*las 11
你可以做:
sed -n wfile.merge file1 file2
Run Code Online (Sandbox Code Playgroud)
或者:
awk '{print > "file.merge"}' file1 file2
Run Code Online (Sandbox Code Playgroud)
或者:
sh -c 'cat file1 file2 > file.merge'
Run Code Online (Sandbox Code Playgroud)
(请注意,根据实现,前两个可能无法正常处理二进制文件)。