我正在尝试在Mac OSX上为// change the value of the element
ionicInputEl.children[0].value = "ELEMENT UPDATE";
dispatchEvent( ionicInputEl.children[0], 'input' );
fixture.detectChanges();
tick();
// check to see that the instance value updated to match.
expect( instance.ionicInputControl.value ).toEqual( 'ELEMENT UPDATE');
写一个bash别名。它不在bash别名脚本中时有效,但在我尝试创建别名时它不起作用。
我在终端上一个接一个地尝试了这些命令:
Chromium
然后,我尝试将这些全部放在我的cd /Applications/Chromium.app/Contents/MacOS/
./Chromium --pro-server="socks5://localhost:1234
cd -
脚本中的一个别名命令中:
.bash_profile
现在,当我像这样推出bash:alias launch_chromium='cd /Applications/Chromium.app/Contents/MacOS/; ./Chromium --pro-server="socks5://localhost:1234" ; cd -'
时,我得到了
bash --login
而且,当我将alias命令中的确切内容复制并粘贴到终端中时,它完美地运行:L
unexpected EOF while looking for matching `''
我做错了什么?
答案 0 :(得分:3)
您问题中发布的别名定义不解释您的症状 - 它应该有效。
但是,使用shell 函数而不是别名可以更好地解决问题:
launch_chromium() (
cd /Applications/Chromium.app/Contents/MacOS/
exec ./Chromium --pro-server="socks5://localhost:1234" "$@"
)
请注意:
( ... )
用于封闭函数体,使其在子shell 中运行,从而无需返回上一个工作目录。
exec
用于提高效率:使用Chromium流程替换子shell,因为不再需要子shell。帽子的提示{ {3}}为此和下一点。
"$@"
以通过。
使用函数有两个重要的优点:
调用它是单个命令,而您的别名包含多个命令,这会导致管道中出现意外行为。
< / LI>函数可以接受参数 - 与别名不同。
答案 1 :(得分:2)
实际上不需要更改工作目录。
public class ApplicationDbContext : DbContext, IDbContextFactory<ApplicationDbContext>
{
public ApplicationDbContext()
{
}
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options) : base(options)
{
}
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
}
public ApplicationDbContext Create(DbContextFactoryOptions options)
{
var builder = new DbContextOptionsBuilder<ApplicationDbContext>();
string connString = "some hardcoded connection string";
builder.UseSqlServer(connString);
return new ApplicationDbContext(builder.Options);
}
}