let = require('child_process');
async function execmd(command,opt)
根據如上**摘要封裝了執行系統命令的方法,正常執行各種命令沒有問題,但是運維給的其中乙個命令,
iptables-restore執行時會報錯:command not found!
在後台執行是沒有問題的,應該是重定向符出了問題。
各種轉義符都試了一下,無效!
暫時先把命令放在指令碼中執行:
#!/bin/bash
echo "execmd iptables-restoreiptables-restore
重定向執行中的程式的fd(檔案描述符)
原文 changing a process file descriptor on the fly debug產品中的乙個程式,發現debug資訊都沒有顯示出來,檢視了 proc fd發現stdout stderr都重定向到了 dev null。由於重定向並不是這個程序本身的行為,並且不方便重啟這個程...
shell額外的重定向運算子
posix shell提供了防止檔案意外截斷的選項 執行set c命令可開啟shell所謂的禁止覆蓋 noclobber 當它在開啟狀態下時,單純的 重定向遇到目標檔案已存在時,就會失敗。運算子則可令noclobber選項失效。shell的here document用法.here documents...
檔案描述符重定向的操作
1.linux用檔案描述符來標識每個檔案物件,檔案描述符是乙個非負整數,可以唯一地標識會話中開啟的檔案,每個過程一次最多可以有9個檔案描述符 2.0 stdin 標準輸入 1 stdout 標準輸出 2 stderr 標準錯誤 3.stdin stdin檔案描述符代表shell的標準輸入,對終端介面...