質問: リダイレクトまたはsudoでのパイプ処理を含むコマンドを実行する方法は? 私は、rootアカウントの代わりにsudoを使用するベストプラクティスであると私が想定していることに従っています。次のような単純な連結ファイル操作を実行しています。sudo echo 'clock_hctosys="yes"' >> /etc/conf.d/hwclock これは、通常のユーザーとして実行されている「>>」の右側に関しては失敗します。余分なsudoを追加することも失敗します(ファイルではなくsudoコマンドにパイプするため、予想される動作)。例はそのとおりですが、rootアカウントで検証およびテストされています。
回答: sudo dd of=必要に応じて追加するには:echo inbytes | sudo dd of=outfile oflag=append conv=notrunc または、ファイルを最初から再作成します。echo inbytes | sudo dd of=outfile 利点: teeより良い/dev/nullリダイレクト サブシェルがないのでshより良い ddには、多くの強力なオプションがあります。 status=progress転送の進行状況を確認する sudoがstdinをコマンドに転送するため、機能します。