我做了一个测试。
如果我启动script
命令并运行一些命令,如果突然丢失我的 ssh 会话(例如,只需关闭 putty 程序),则不会保存输出。有没有某种方法可以强制保存没有类型exit
或的输出ctrl + d
?
前任:
[oracle@dbnode1 ~]$ script test
Script started, file is test
[oracle@dbnode1 ~]$
[oracle@dbnode1 ~]$ echo "hello"
hello
[oracle@dbnode1 ~]$ free -h
total used free shared buff/cache available
Mem: 7.4G 2.8G 77M 3.4G 4.6G 1.0G
Swap: 8.0G 19M 8.0G
[oracle@dbnode1 ~]$
突然失去了 ssh 连接。
我打开一个新会话,文件中没有任何内容。
[oracle@dbnode1 ~]$ ls -l test
-rw-r--r-- 1 oracle oinstall 0 Sep 8 19:54 test
[oracle@dbnode1 ~]$ cat test
[oracle@dbnode1 ~]$
答案1
您应该使用 启动脚本,这将禁用ssh 会话在终止之前发送到其子进程的信号nohup
句柄。HUP
$ nohup /.script test