在bash脚本中的subshel​​l中不运行哈希

时间:2020-03-01 11:59:10

标签: bash

我正在编写一个脚本,以使用现有的不同内核版本创建替代的uname 在机器上

hear是脚本的摘录:

dir=$(mktemp -d --tmpdir uname.XXXXXXXX)      
cat > "$dir/latest_rhel6_release" <<EOF
2.6.32-733.27.1.el6.x86_64
EOF

cat > "$dir/uname" <<EOF
#!/bin/bash
cat "$dir/latest_rhel6_release"
EOF

chmod +x "$dir/uname"
hash -p "$dir/uname" uname"

除最后一行外,代码正常工作

hash -p "$dir/uname" uname"

如果我将运行命令:

hash -p "$dir/uname" uname"

运行脚本后,是否可以运行“ uname -r”

我将得到所需的结果:

2.6.32-754.27.1.el6.x86_64

问题是我如何从脚本运行哈希命令,但不能作为子shell运行 并影响他的父外壳,我从中运行脚本

1 个答案:

答案 0 :(得分:1)

源脚本或将其插入。假设fn buildCbClosure<T : From<web_sys::HtmlElement>>(mut t : T) -> Closure<dyn FnMut(web_sys::MouseEvent)> { let mut elem = web_sys::HtmlElement::from(t); let a = Closure::wrap(Box::new(move |event: web_sys::MouseEvent| { handleButtonClick(&event); elem.set_text_content(Some("Text - Klik")); }) as Box<dyn FnMut(_)>); a } 是脚本的名称。

error[E0277]: the trait bound `web_sys::HtmlElement: std::convert::From<T>` is not satisfied
--> src/lib.rs:59:20
|
59 |     let mut elem = web_sys::HtmlElement::from(t);
|                    ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::convert::From<T>` is not implemented for `web_sys::HtmlElement`

myscript

source ./myscript

请参见Why I can't set variables in my script to the parent shell

相关问题