簡體   English   中英

bash回聲是否在ps中顯示

[英]Does bash echo show up in ps

我正在嘗試使用bash 腳本將敏感數據傳遞給stdin。 我想知道我是否可以使用

echo "This is verysecretmessage" | IamAwaitingStdin

我以為,由於echo是內置的/bin/bash ,因此不應在ps或其他任何地方顯示,這是正確的嗎?

如果沒有,例如,它將代替上面的解決方案

IamAwaitingStdin <<EOF
This is verysecretmessage
EOF

那么當用()封裝它時,如何在bash腳本中使用<<EOF bla bla EOF語法? 語法是什么?

我猜這是不正確的,因為bash是單線的

$(IamAwaitingStdin << EOF
This is verysecretmessage
EOF)

謝謝!

  1. 您認為echo不會創建單獨的進程是正確的。 新進程的名稱將來自管道的另一側。

  2. 您的帶有$( here文檔的$( ... )示例可以很好地工作-大多數bash構造可以跨越多行,即使它們通常不行。 (至多,您可能需要使用\\來轉義一些嵌入式換行符,但是在$( ... )即使不是必需的。)

  3. 您也可以使用herestring代替heredoc:

     IamAwaitingStdin <<<"This is verysecretmessage" 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM