linux cat命令可以用来写入文本文件吗?

是这样的:

cat "Some text here." > myfile.txt

可能吗?这样myfile.txt的内容现在将被重写为:

Some text here.

这对我不起作用,但也不会抛出任何错误。

特别对基于__abc0的解决方案感兴趣(而不是vim/vi/emacs等)。所有在线示例都显示cat用于文件输入,而不是原始文本…

451467 次浏览

这就是echo所做的:

echo "Some text here." > myfile.txt

听起来你在找一个这里的文档

cat > outfile.txt <<EOF
>some text
>to save
>EOF

还有另一种方法

cat > outfile.txt
>Enter text
>to save press ctrl-d
cat > filename.txt

输入文本 直到EOF 保存文本使用:ctrl+d

如果你想读取。txt文件使用

cat filename.txt

还有一件事。txt不是强制性的,它只是供你参考。

cat也可以用在|后面写入文件,即管道输入数据流

我使用以下代码将原始文本写入文件,以更新我的cpu设置。希望这对你有所帮助! 脚本:< / p >
#!/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

cat >> /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor <<EOF

这将把文本附加到文件的末尾,而不会删除文件中已经存在的其他数据。

你也可以这样做:

user@host: $ cat<<EOF > file.txt
$ > 1 line
$ > other line
$ > n line
$ > EOF
user@host: $ _

我相信有很多方法可以使用它。

使用echo编写带有环境变量的多行文本:

echo -e "
Home Directory: $HOME \n
hello world 1 \n
hello world 2 \n
line n... \n
" > file.txt

简单地用cat管道echo

例如

echo write something to file.txt | cat > file.txt

使用cat将文本写入文件的另一种方法是这样的

cat >file.txt <<< Write something here

解决你的问题的方法是:

echo " Some Text Goes Here " > filename.txt

但是如果你想将一个文件的输出重定向到其他文件,或者想将一个文件的输出附加到另一个文件,你可以使用cat命令:

cat filename > newfile——将filename的输出重定向到newfile

cat filename >> newfile——将filename的输出附加到newfile

对于文本文件:

cat > output.txt <<EOF
some text
some lines
EOF

对于PHP文件:

cat > test.php <<PHP
<?php
echo "Test";
echo \$var;
?>
PHP

MacOS 11.4上的Jenkins

{
echo 'line 1' $var1
echo 'line 2'
echo 'result' $var5


} > ${destination_file}

我已经尝试了很多次cat语法,例如:cat > ${dest_file} <<EOF ... EOF,并得到错误syntax error: unexpected end of file。因此,我使用echo语法将多行文本输出到文件中。

引用: