我有一个包含多个 RPM 的文件夹,并且只想返回包的名称。
例如。
./nodejs-6.14.3-1.el7.x86_64.rpm
Run Code Online (Sandbox Code Playgroud)
我只想得到
nodejs
Run Code Online (Sandbox Code Playgroud)
该目录显示如下:
./http-parser-2.7.1-5.el7_4.x86_64
./libicu-50.1.2-15.el7.x86_64
./libuv-1.22.0-1.el7.x86_64
Run Code Online (Sandbox Code Playgroud)
我想要这个输出:
http-parser
libicu
libuv
Run Code Online (Sandbox Code Playgroud) 当你有一个包含的代码时
find list[7].find('~') == -1
process
Run Code Online (Sandbox Code Playgroud)
在这种情况下,-1代表什么?
我试图将数字更改为不同的数字,但不断收到错误.
将标准错误描述符重定向到unix中名为error.txt的文件所需的命令是什么?
到目前为止我有这个命令:
find / -name "report*" ________ error.txt
Run Code Online (Sandbox Code Playgroud) 我知道对于无序映射,"find"返回迭代器,而"at"返回映射值.我只是好奇哪一个更快.
我有以下单元格数组
a{1, 1} = [1 3];
a{1, 2} = [5 63];
a{2, 2} = [11 11];
Run Code Online (Sandbox Code Playgroud)
现在,从中a,我想找到一个与其元素相等的矩阵[11 11]
此代码返回从2开始的Integer的第一个因子,或者如果它是素数则不返回任何内容.
示例:firstFactorOf 24返回"Just 2"
示例:firstFactorOf 11返回"Nothing"
我的问题是,如果有一个因子,我将如何返回值2而不是"Just 2",如果没有因子,我将如何返回值x.
firstFactorOf x
| m == Nothing = m
| otherwise = m
where m =(find p [2..x-1])
p y = mod x y == 0
//RETURNS:
ghci> firstFactorOf 24
Just 2
ghci> firstFactorOf 11
Nothing
Run Code Online (Sandbox Code Playgroud) 我有一个很奇怪的问题.我正在尝试使用 std::find宽度,std::string但在Visual Studio 2017中编译时出现以下错误:
Error C2446: '==': no conversion from 'const char *' to 'int'
c:\program files (x86)\microsoft visual studio\2017\enterprise\vc\tools\msvc\14.12.25827\include\xutility:3481
Run Code Online (Sandbox Code Playgroud)
产生问题的代码:
#include <algorithm>
#include <string>
int main(int argc, char **argv)
{
std::string s("Just a test string");
auto itr = std::find(s.begin(), s.end(), "t");
}
Run Code Online (Sandbox Code Playgroud)
替换"t"为std::string("t")生成以下错误:
Error C2678: binary '==': no operator found which takes a left-hand operand of type 'char' (or there is no acceptable conversion)
c:\program files (x86)\microsoft visual studio\2017\enterprise\vc\tools\msvc\14.12.25827\include\xutility:3481
Run Code Online (Sandbox Code Playgroud) 我试图在Linux shell脚本中运行以下find命令.当我在终端中运行该命令时,它成功找到具有.mp4指定文件夹扩展名的所有文件,并将它们复制到临时文件夹.
find /datadrive/reports/ -name \*.mp4 -exec cp {}
/datadrive/reports/video_tmp/ \;
Run Code Online (Sandbox Code Playgroud)
但是,当我在我的运行中 file_mover.sh
码:
SHELL=/bin/bash
PATH=~/find /datadrive/reports/ -name '\*.mp4' -exec cp {}
/datadrive/reports/video_tmp/ \;
done
MAILTO=root
Run Code Online (Sandbox Code Playgroud)
输出:
./file_mover.sh: line 2: /datadrive/reports/: Is a directory.
Run Code Online (Sandbox Code Playgroud)
我想我在脚本的某个地方缺少语法,任何帮助都会受到赞赏.
我在Debian Linux上有大量的文件文件,组织在一个大文件夹树中.我需要的是找到具有特定名称模式的所有文本文件,然后将包含文件夹移动到目标.
例:
/home/spenx/src/a12/a1a22.txt
/home/spenx/src/a12/a1a51.txt
/home/spenx/src/a12/a1b61.txt
/home/spenx/src/a12/a1x71.txt
/home/spenx/src/a167/a1a22.txt
/home/spenx/src/a167/a1a51.txt
/home/spenx/src/a167/a1b61.txt
/home/spenx/src/a167/a1x71.txt
Run Code Online (Sandbox Code Playgroud)
命令:
find /home/spenx/src -name "a1a2*txt"
mv /home/spenx/src/a12 /home/spenx/dst
mv /home/spenx/src/a167 /home/spenx/dst
Run Code Online (Sandbox Code Playgroud)
结果:
/home/spenx/dst/a12/a1a22.txt
/home/spenx/dst/a167/a1a22.txt
Run Code Online (Sandbox Code Playgroud)
谢谢您的帮助.
SK
我对c ++很陌生,所以我对缺乏知识感到抱歉,但是出于某种原因,我的find方法不起作用.任何帮助都会很棒,这是我正在使用的代码.
www.pastie.org/9434690
//String s21
string s21 ="| o |";
if(s21.find("1")){
cout << "IT WORKS OMG " << s21 << endl;
}
else if(!s21.find("1")){
cout << "HASOSDKHFSIF" << endl;
}
Run Code Online (Sandbox Code Playgroud)
谢谢
忘记提及,代码总是打印"IT WORKS",即使字符串中没有"o".