我最近发现Vim中有一个叫做编译器的命令.您可以使用任何常见的编译器(例如,:编译器gcc,:编译器php等)调用它,但它似乎没有立即生效.
我搜索了联机帮助页,但没有发现它实际上有什么用处,Vim Wiki也没有.有谁知道那个命令实际上做了什么?
我刚开始使用bash脚本,我需要使用具有多种文件类型的find命令.
list=$(find /home/user/Desktop -name '*.pdf')
Run Code Online (Sandbox Code Playgroud)
这段代码适用于pdf类型,但我想一起搜索多个文件类型,如.txt或.bmp.你有什么想法吗?
我必须在bash脚本中运行命令,并且在这个bash脚本中我必须运行其他命令.我正在运行CentOS.
我在博客和手册中找到了两种方法:
1)使用ticks或accent char
command `sub command`
Run Code Online (Sandbox Code Playgroud)
要么
2)使用美元符号和括号
command $(sub command)
Run Code Online (Sandbox Code Playgroud)
2和哪一个最好使用有什么区别?
我不确定这个术语存在于什么级别,但在php-framework Laravel中有一个名为Artisan的命令行工具,用于创建cronjobs.(aka命令)创建命令时.您可以像这样指定参数AND选项:
/**
* Get the console command arguments.
*
* @return array
*/
protected function getArguments()
{
return array(
array('example', InputArgument::REQUIRED, 'An example argument.'),
);
}
/**
* Get the console command options.
*
* @return array
*/
protected function getOptions()
{
return array(
array('example', null, InputOption::VALUE_OPTIONAL, 'An example option.', null),
);
}
Run Code Online (Sandbox Code Playgroud)
这两者有什么区别?
我正在通过ffmpeg编辑一个视频,我必须在这里继续查看时间戳,从几秒到几毫秒.我知道这样的命令:ffmpeg -i a.ogg -ss 00:01:02 -to 00:01:03 -c copy x2.ogg.它指向秒,但我想要毫秒.我该怎么办?
我的应用程序是使用WPF中的MVVM模式编写的,我的所有Buttons都使用Command绑定来执行模型中的代码.所有命令都在CanExecute中具有代码,以确定绑定Button的Enabled状态.逻辑运行完美,但在所有情况下,除非我点击GUI中的其他位置,否则GUI将保持禁用状态.
例如,我有一个名为Discard Candy的按钮.当我单击此按钮时,它会在线程池线程中启动一个进程,该进程将名为Running的bool属性设置为true.由于Discard Candy命令的CanExecute方法看起来像这样
public bool CanExecute(object parameter)
{
return !Running;
}
Run Code Online (Sandbox Code Playgroud)
一旦过程开始,该按钮将被禁用.问题是当进程完成时,Running会设置为false,但GUI不会更新,即Discard Candy不会重新启用.
但是,如果我点击GUI中的任何位置,例如在窗口或标题栏上,则会立即启用Discard Candy按钮.所以逻辑是有效的,但事情正在发生,我只是不明白.有人可以向我解释一下这种行为吗?
编辑 - 到目前为止,它听起来像CommandManager.InvalidateRequerySuggested没有帮助人.我打算试一试,但此刻我有点担心.我确实按照推荐的链接,这样做决定阅读更多有关MVVM光工具包的信息.这听起来很不错 - 有没有人在这里使用它并且能够确认它没有表现出我到目前为止看到的问题?虽然我计划在下一个主要版本中尝试MVVM轻型工具包.我的应用程序,我不想重做我目前所有的命令,这就是为什么我可能会开始使用CommandManager.InvalidateRequerySuggested,所以我们都可以在这里得到另一个关于它的用处的数据点.
编辑#2 - 非常有趣,MVVM light工具包实际上依赖于CommandManager.InvalidateRequerySuggested以支持UI禁用/重新启用命令的能力.作者说:
"严格地说,在WPF中,如果你的命令绑定到CommandManager监视的控件,你不必自己引发CanExecuteChanged事件.你可以让CommandManager处理这种情况.也就是说,外部事件可能还可以改变UI的状态.假设UI应该从上午9点到下午5点启用,然后在晚上禁用.用户没有触发UI,所以代码应该(礼貌地)请求CommandManager重新查询状态命令.这是通过调用InvalidateRequerySuggested CommandManager上的方法实现的.正如你猜到了,RelayCommand类的方法RaiseCanExecuteChanged做到了这一点. "
我正在开发WPF应用程序,我想重用我在所有这些应用程序中相同的类,所以我可以添加它们作为参考.
在我的情况下,我有一个我的命令类:
public class RelayCommand : ICommand
{
#region Fields
readonly Action<object> _execute;
readonly Predicate<object> _canExecute;
#endregion // Fields
#region Constructors
public RelayCommand(Action<object> execute)
: this(execute, null)
{
}
public RelayCommand(Action<object> execute, Predicate<object> canExecute)
{
if (execute == null)
throw new ArgumentNullException("execute");
_execute = execute;
_canExecute = canExecute;
}
#endregion // Constructors
#region ICommand Members
public bool CanExecute(object parameter)
{
return _canExecute == null ? true : _canExecute(parameter);
}
public event EventHandler CanExecuteChanged
{
add { CommandManager.RequerySuggested += value; } …Run Code Online (Sandbox Code Playgroud) 我有一台 Linux [ Ubuntu 版本 16.04 或更高版本 ] 计算机,我想查看现在有多少服务正在运行,以及使用 1 个命令或最少使用命令安装了多少服务。我怎样才能看到这个?
我想弄清楚什么时候管道 或重定向<>在命令中优先?
这是我的想法,但需要确认这是它的工作原理.
例1:
sort < names | head
The pipe runs first: names|head then it sorts what is returned from names|head
Run Code Online (Sandbox Code Playgroud)
例2:
ls | sort > out.txt
This one seems straight forward by testing, ls|sort then redirects to out.txt
Run Code Online (Sandbox Code Playgroud)
例3:
Fill in the blank? Can you have both a < and a > with a | ???
Run Code Online (Sandbox Code Playgroud) 我正在使用以下命令拆分文件.它应该每50,000行拆分并使用一个4位数字后缀.该文件大约有1.4亿行.
split -d -l -n 4 50000 domains.xml domains_
Run Code Online (Sandbox Code Playgroud)
但是,当我运行时,我收到此错误:
split: -n: invalid number of lines
Try `split --help' for more information.
Run Code Online (Sandbox Code Playgroud)
对此有什么正确的命令?
command ×10
bash ×3
command-line ×2
mvvm ×2
shell ×2
wpf ×2
c# ×1
compilation ×1
data-binding ×1
devops ×1
ffmpeg ×1
find ×1
html5-video ×1
laravel ×1
linux ×1
milliseconds ×1
php ×1
pipe ×1
redirect ×1
service ×1
ssh ×1
unix ×1
vim ×1