我认为应该可以使用 scp 命令和 head 命令的组合来仅将文件的第一行复制到远程系统,但一直无法想出正确的命令来实现这一点。
给定一个像这样的 scp 命令:
scp /shared/myfolder/myfile.txt myuser@myserver:/newlocation/myotherfolder/myfile.txt
Run Code Online (Sandbox Code Playgroud)
我只想将 myFile.txt 的第一行发送到远程系统。我可以先使用这个命令:
head -1 myfile.txt >> myfile2.txt
Run Code Online (Sandbox Code Playgroud)
然后 scp myfile2.txt,但将其放在单个命令中会很有帮助。
scp 不从 stdin 读取或使用 bash 进程替换,但您可以尝试以下 hack:
head -1 myfile.txt | ssh myuser@myserver "cat > /shared/myfolder/myfile.txt"
Run Code Online (Sandbox Code Playgroud)