我使用來搜索所有這些,然後循環,沒有運氣來取消他們試圖取消設置功能設置的bash函數不能用「非固定-f」時,函數名在一個循環的變量
在循環時解封非循環的工作方式(例如其中創建bar_取消)
function bar_ { echo "bar"; }
function_name="bar_"
echo -n "before unset found function: --> "
declare -F $function_name || echo "<not found>"
unset -f $function_name
echo -n "after unset found function: --> "
declare -F $function_name || echo "<not found>"
echo ""
然而,它未能去掉自己
function foo_ { echo "bar"; }
declare -F | cut -d" " -f3 | grep foo_ | while read function_name
do
echo -n "before under found function: --> "
declare -F $function_name || echo "<not found>"
unset -f ${function_name}
done
echo -n "after unset found function: --> "
declare -F foo_ || echo "<not found>"
echo ""
這是一些範圍問題?我試圖在eval中包裝未設置的聲明,但沒有任何效果。
每行結尾處的分號和反斜槓是怎麼回事? – 2011-06-14 00:44:54
我很好奇:您首先需要做什麼? :) – sarnold 2011-06-14 00:46:07
分號和支柱只是這樣,它會很容易地運行我在一個容易複製粘貼行的測試。 – flosst 2011-06-14 01:10:18