是这样的:
cat "Some text here." > myfile.txt
可能吗?这样myfile.txt的内容现在将被重写为:
Some text here.
这对我不起作用,但也不会抛出任何错误。
对基于cat的解决方案特别感兴趣(不是vim/vi/emacs等)。所有在线的例子都显示cat用于文件输入,而不是原始文本…
是这样的:
cat "Some text here." > myfile.txt
可能吗?这样myfile.txt的内容现在将被重写为:
Some text here.
这对我不起作用,但也不会抛出任何错误。
对基于cat的解决方案特别感兴趣(不是vim/vi/emacs等)。所有在线的例子都显示cat用于文件输入,而不是原始文本…
当前回答
因为没人回答最初的问题。是的。Cat可以用来在没有here doc的情况下将文本写入文件。
cat - >file.txt
This is the world's worst
multiline text editor.
^d
其他回答
Cat也可以用在|后面写入文件,即管道向Cat提供数据流
听起来你在找这里的文档
cat > outfile.txt <<EOF
>some text
>to save
>EOF
我使用以下代码将原始文本写入文件,以更新我的cpu设置。希望这对你有所帮助! 脚本:
#!/bin/sh
cat > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor <<EOF
performance
EOF
cat > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor <<EOF
performance
EOF
这将把文本“performance”写入上面脚本中提到的两个文件。这个例子覆盖文件中的旧数据。
这段代码被保存为一个文件(cpu_update.sh),并使其可执行运行:
chmod +x cpu_update.sh
之后,你可以运行脚本:
./cpu_update.sh
如果您不想覆盖文件中的旧数据,请切换出去
cat > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor <<EOF
with
cat >> /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor <<EOF
这将把文本附加到文件的末尾,而不会删除文件中已经存在的其他数据。
这就是echo所做的:
echo "Some text here." > myfile.txt
因为没人回答最初的问题。是的。Cat可以用来在没有here doc的情况下将文本写入文件。
cat - >file.txt
This is the world's worst
multiline text editor.
^d