在循环中暂停

时间:2018-04-04 10:59:18

标签: linux bash while-loop nano

我目前的任务是手动检查多个文件的内容。我有文本文件中列出的所有文件,换行符(每行末尾的换行符),并且当前正在尝试计算出能够读取文本文件的bash脚本 - 行换行然后在nano中打开它们检查。 当我用nano打开它时出现问题 - 我目前在win10上运行linux作为子系统,所以我只有终端可用。我目前的问题是当我尝试这样做时:

Cat file | while read line; do nano “$line”; done

最小的工作示例:

mkdir test
cd test
touch {a,v,c}
ls > file
Cat file |  while read line; do nano “$line”; done

同时处理所有文件,或者尝试 - 它遍历所有文件并结束 - 不允许我以nano检查文件或允许我正确关闭它。

我可以以某种方式暂停while循环,同时我打开文件在nano?

1 个答案:

答案 0 :(得分:0)

Cat file |  while read line; do nano “$line”; done

Nano可能会尝试通过标准输入与您进行交互,这是管道。尝试从TTY重定向其标准输入:

Cat file |  while read line; do nano “$line” < /dev/tty; done