将脚本粘贴到带缩进的命令行

时间:2015-06-29 17:48:23

标签: awk indentation

当我尝试将我的一部分脚本复制并粘贴到命令行时,我得到了一堆文件名和目录以及我的实际代码。例如,如果我复制并粘贴一些非常简单的东西,如:

awk '{
         if ($4=="YES")

         print $0

}' file

我得到的结论是:

.java/ .history .pip/ .bash_history

打印在命令行上。它与我脚本中的缩进有关,因为如果我复制并粘贴脚本,如:

awk '{

if ($4=="YES")

print $0

}'

我没有在命令行上粘贴不需要的项目。

有没有人经历过这个?我不确定是否有一种特殊的方法可以正确地缩进代码而我没有关注?

感谢任何帮助。谢谢。

1 个答案:

答案 0 :(得分:1)

当您在bash提示符下按Tab键两次时,它会显示可能的文件名完成列表,即使它在多行单曲中间有>提示符号 - 引用字符串。当您告诉终端模拟器粘贴文本时,它会像输入一样输入每个字符,因此您应该得到相同的结果。

如果awk脚本复杂到足以从缩进中受益,则应将其放在文件中,然后使用-f选项从文件中运行它

awk -f filename