如何从终端写一个文件的单引号(')和双引号(")?

时间:2017-12-13 12:07:20

标签: shell file terminal command-line-interface echo

使用' echo'从终端写入文件时,我可以将除两个引号之外的所有内容写在一起。当尝试将python代码行写入/附加到文件时,包含单引号和双引号,如

echo "url = "http://mydummyurl.xyz" 
names = ['name1', 'name2']" > somefile.txt

echo 'url = "http://mydummyurl.xyz" 
names = ['name1', 'name2']' > somefile.txt

somefile.txt中写的是

url = http://mydummyurl.xyz
names = ['name1', 'name2']

url = "http://mydummyurl.xyz"
names = [name1, name2]

取决于我在回声后用来封闭字符串的内容。请注意,在文件中编写的字符串中缺少单引号或用作python语法的双重代码。如何写入文件保持所有必要的语法完整,包括单引号和双引号?

1 个答案:

答案 0 :(得分:1)

你需要逃避引号:

kent$  echo  "single:''';double:\"\"\"" > foo

kent$  cat foo
single:''';double:"""