2016-12-25 37 views
0

我需要用sudo截斷一大堆文件。對於只有一個工作的:如何通過sudo截斷glob文件?

sudo truncate -s 0 /var/lib/docker/containers/1cdd2386de3579-json.log 

但是像這樣/var/lib/docker/containers/*/*-json.log一個水珠......

$ LANG=C sudo truncate -s 0 /var/lib/docker/containers/*/*-json.log 
truncate: cannot open '/var/lib/docker/containers/*/*-json.log' for writing:No such file or directory 
+0

您也可以解決這個問題,而不'truncate'爲:

您可以在sh shell中運行它,這樣的水珠會sudo的殼體內部評估'sudo的慶典-O了nullglob - c在/var/lib/docker/containers/*/*-json.log中爲f;做>「$ f」; done''。 –

回答

1

的水珠在當前用戶的外殼中進行評估,之前的sudo提升的權限在效果(實際執行sudo之前)。當前用戶可能沒有權限訪問受影響的路徑。

sudo sh -c 'truncate -s 0 /var/lib/docker/containers/*/*-json.log'