如何从剪贴板中捕捉<< EOF'任意文本数据
我想将一些文本粘贴到终端并将其保存到文件而不使用编辑器,但只是'cat'。 但是文本中的行或标签太长,使用“cat> test.txt”或“cat <<'EOF'> test.txt”(“here document”)之类的简单命令无法实现。 在“此文档”模式下的bash中,如果粘贴的文本数据包含选项卡,则会导致自动完成。 如果我用'--noediting'开始bash,在某些系统上,粘贴行的长度限制为256个字符,其余的粘贴文本将被丢弃。 如果我直接粘贴到cat的输入(没有<<'EOF'),最大线也是256。 如果我做: stty raw; cat >test.txt; stty sane ,行长度不再受限制,但没有办法将EOF发送到cat的输入。 如果我启用eof char: stty raw icanon eof '^d'; cat >test.txt; stty sane 长队丢失了。 另外,如果我不禁用echo: stty -echo ,Solaris 10和Putty的组合导致大块文本~1500chars丢失,有时会导致空文件。 我得到的最接近的是用超时杀死猫: ( sleep 15; pkill cat ) & stty raw -echo; cat >test.txt; stty sane; echo …