我正在执行一个将崩溃报告转储到STDERR我必须过滤一些必要信息的程序.问题是,我无法重定向STDERR到STDOUT与PIPE它grep
command 2>&1 >/dev/null | grep "^[^-]" >& /tmp/fl
Run Code Online (Sandbox Code Playgroud)
得到错误: Ambiguous output redirect.
相同的命令在bash终端下工作.我应该改变什么来使它工作?
我在android工具栏中的searchview实现有问题.
我如何解决上述问题?
menu.xml文件
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_search"
android:title="@string/car_num"
android:icon="@drawable/ic_search_white_24dp"
app:actionViewClass="android.support.v7.widget.SearchView"
app:showAsAction="always" />
<item
android:id="@+id/action_add_client"
android:icon="@drawable/ic_account_multiple_plus"
android:title="@string/action_add_client"
app:showAsAction="always" />
</menu>
Run Code Online (Sandbox Code Playgroud)
分段
@Override
public void onCreateOptionsMenu(final Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.menu_fragment_reg_vehicles, menu);
final MenuItem item = menu.findItem(R.id.action_search);
searchView = (SearchView) MenuItemCompat.getActionView(item);
searchView.setQueryHint("Search");
searchView.setMaxWidth(Integer.MAX_VALUE);
searchView.setIconifiedByDefault(false);
searchView.setOnQueryTextListener(this);
searchView.setOnCloseListener(new SearchView.OnCloseListener() {
@Override
public boolean onClose() {
setItemsVisibility(menu, item, true);
return false;
}
});
searchView.setOnSearchClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
setItemsVisibility(menu, item, false);
searchView.requestFocus();
} …Run Code Online (Sandbox Code Playgroud) 我试着写一些基本的聊天系统只是为了学习perl.我试图将聊天记录变成1个文件并打印新消息,如果它出现在chatlog.dat文件中,所以我写了一个功能几乎完全相同的东西,但我有一些问题,不知道如何解决它们.所以现在我有2个问题!
我无法理解如何保持checkFile功能始终处于活动状态(如多处理)以持续检查新消息
当我尝试编写将附加到聊天记录中的新消息时,会发生此问题.口译员在线上等待我的输入my $newMessage = <STDIN>;,但是,如果有人写了新消息怎么办?直到他按下进入才会显示...如何取消?
my ($sec,$min,$hour) = localtime();
while(1){
my $userMessage = <STDIN>;
last if $userMessage eq "::quit";
`echo "($hour:$min:$sec): $userMessage" >>chatlog.dat`;
}
sub checkFile{
my $lastMessage = "";
my $newMessage = "";
while (1) {
my $context = `cat chatlog.dat`;
split(/\n/, $context);
$newMessage = $_[$#_];
if ($newMessage ne $lastMessage) {
print $newMessage;
$lastMessage = $newMessage;
}
}
}
Run Code Online (Sandbox Code Playgroud)如何过滤父词典中其他子词典键中存在的所有常用子词典键
d = {
'0': {'key_x': 0, 'key_y': 15, 'key_z': 41}
'1': {'key_x': 5, 'key_y': 22}
'2': {'key_x': 6, 'key_y': 41}
}
result ['key_x', 'key_y']
Run Code Online (Sandbox Code Playgroud)
目前解决方案是
intersect = {}
for k in corner_values.keys():
for j in corner_values[k]:
if j not in intersect:
intersect[j] = 1
else:
intersect[j] += 1
for k in intersect:
if intersect[k] != len(corner_values.keys()):
del intersect[k]
Run Code Online (Sandbox Code Playgroud)
有没有更简单的解决方案呢?
简单的事情,如何打印二进制数并将其转移到左侧?
$num = 0b00000010001;
for(0..6){
print sprintf ("%b",$num), "\n";
$num<<1;
}
Run Code Online (Sandbox Code Playgroud)
这段代码的问题:它不会在1之前打印0!打印的重新打印只是"10001",它不会改变数字.
最终的输出应该是:
00000010001
00000100010
00001000100
00010001000
00100010000
01000100000
10001000000
Run Code Online (Sandbox Code Playgroud) 我有这样的字符串
$str = '"filename","lf","$data","{ }",0';
Run Code Online (Sandbox Code Playgroud)
如何"从字符串中删除所有?我试图使用这种正则表达式:
$str =~ s/"(.+?)"//s;
Run Code Online (Sandbox Code Playgroud)
它应匹配单词并删除"-s
我有一个类似的数组
@tmp = ('value1-1', 'value1-2', 'value1-3', '', 'value2-1', 'value2-2', 'value2-3')
Run Code Online (Sandbox Code Playgroud)
在看到值为空后,如何将数组拆分为两部分''?
所以输出应该是这样的
@value1=('value1-1','value1-2','value1-3');
@value2=('value2-1','value2-2','value2-3');
Run Code Online (Sandbox Code Playgroud)
我试过这种方式
foreach $item(@tmp){
unless($add == ''){
#print $add;
push (@value,$add);
}
}
Run Code Online (Sandbox Code Playgroud)
它不会返回任何东西.
如何更改数组的名称以在其中放置另一个项目
@array=("1, 2, 3, 4", "5, 6, 7, 8");
$c=0;
foreach $x(@array){
push ("@value_$c", split(", ", $x));
$c++;}
Run Code Online (Sandbox Code Playgroud)
所以输出应该是这样的:
@value_0=(1,2,3,4)
@value_1=(5,6,7,8)
Run Code Online (Sandbox Code Playgroud)
PS:我知道写"@ value_ $ c"是不正确的
我正在尝试编写一个脚本来反转每行中文件中的每个单词
line1 asdasdfff1enil fffdsadsa使用:
@lines = split(/\s+/, reverse($old));
Run Code Online (Sandbox Code Playgroud)
错误在哪里?
我正在尝试编写一个脚本,它将所有字母从小写转换为大写而不使用该uc()函数.